スプリングスプリング-モノラル


Singletorn Pattern
アプリケーションの起動時にクラスに1回目のメモリのみが割り当てられ、そのメモリのインスタンスが作成される設計モードです.

上の図に示すように、同じサービスが要求されると、要求通りにオブジェクトが作成され続け、JVMメモリにオブジェクトがスタックされ続けます.
これらの問題を解決する設計モードは単色調モードである.
  • 試験案
  • public class SingleTornClass {
    
        private static final SingleTornClass instance = new SingleTornClass();
    
        private SingleTornClass () {}
    
        public static SingleTornClass getInstance() {
            return instance;
        }
    
        public void doSomething() {
            System.out.println("싱글톤 테스트!");
        }
    }
    静的領域にオブジェクトを事前に作成し、ジェネレータをprivateに設定して再生不可能にします.
    @SpringBootTest
    public class SingleTornTest {
    
        @Test
        public void test() throws Exception {
            SingleTornClass instance1 = SingleTornClass.getInstance();
            SingleTornClass instance2 = SingleTornClass.getInstance();
    
            Assertions.assertThat(instance1).isEqualTo(instance2);
    
        }
    }
    このオブジェクトはgetInstanceからのみアクセスできます

    同じオブジェクトであることを確認できます.