빈이 존재할수 있는 범위 싱글톤 프로토타입 웹 관련 스코프 request, session, application 빈에 스코프 지정 컴포넌트 스캔 자동 등록 @Scope("prototype") @Component public class HelloBean {} 수동 등록 @Scope("prototype") @Bean PrototypeBean HelloBean() { return new HelloBean(); } 프로토타입 스코프 1. 프로토타입 스코프의 빈을 스프링 컨테이너에 요청 2. 스프링 컨테이너는 이 시점에 프로토타입 빈을 생성, 필요 의존관계 주입 3. 생성한 프로토타입 빈 반환 4. 이후 스프링 컨테이너에 같은 요청이 오면 항상 새로운 프로토타입 빈 생성, 반환 스프링 컨테이너는 프로토타입 빈을 ..
스프링 빈의 이벤트 라이프사이클 스프링 컨테이너 생성 스프링 빈 생성 의존관계 주입 초기화 콜백 사용 (어플리케이션 동작) 소멸전 콜백 스프링 컨테이너 종료 InitializingBean, DisposableBean InitializingBean afterPropertiesSet() 지원하는 인터페이스, 이 메소드는 의존관계 주입이 끝난후 호출됨 DisposableBean destroy() 를 지원하는 인터페이스, 이 메소드는 스프링 컨테이너 종료 완료 후 호출됨 public class NetworkClient implements InitializingBean, DisposableBean { private String url; // 의존 관계 주입이 끝나면 호출됨 @Override public void ..
public class AllBeanTest { @Test void findAllBean() { AnnotationConfigApplicationContext ac = new AnnotationConfigApplicationContext(DiscountService.class, AutoAppConfig.class); } static class DiscountService { private final Map policyMap; private final List policies; @Autowired public DiscountService(Map policyMap, List policies) { this.policyMap = policyMap; this.policies = policies; System.ou..
생성자 주입을 사용하는 것을 권장한다 하지만 생성자 주입을 사용하면 코드가 조금 길어짐 Lombok 의 등장 Lombok 롬복은 클래스에 공통적으로 필요한 여러가지 메서드들을 애노테이션을 기반으로 만들어준다. 자바의 애노테이션 프로세라는 기능 사용해 컴파일 시점에 코드 자동 생성해줌. @Getter @Setter public class LombokClass { private String name; public static void main(String[] args) { LombokClass cls = new LombokClass(); cls.getName(); // @Getter cls.setName("newName"); } } @Getter, @Setter : 필드들에 대한 getter, setter ..
- Total
- Today
- Yesterday
- permutation
- graph
- Unity
- back tracking
- Stack
- 이분탐색
- Python
- MVC
- C++
- Kruskal
- Spring
- recursion
- 조합
- priority queue
- 자료구조
- binary search
- 재귀
- CSS
- dfs
- greedy
- db
- DP
- Brute Force
- floyd warshall
- BFS
- C
- Tree
- Dijkstra
- two pointer
- Implementation
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | 5 | 6 | 7 |
| 8 | 9 | 10 | 11 | 12 | 13 | 14 |
| 15 | 16 | 17 | 18 | 19 | 20 | 21 |
| 22 | 23 | 24 | 25 | 26 | 27 | 28 |
