목록Spring Boot (16)
개발일기장
https://www.inflearn.com/course/%EC%8A%A4%ED%94%84%EB%A7%81-%ED%95%B5%EC%8B%AC-%EC%9B%90%EB%A6%AC-%EA%B3%A0%EA%B8%89%ED%8E%B8/dashboard 스프링 핵심 원리 - 고급편 - 인프런 | 강의 스프링의 핵심 원리와 고급 기술들을 깊이있게 학습하고, 스프링을 자신있게 사용할 수 있습니다., 핵심 디자인 패턴, 쓰레드 로컬, 스프링 AOP스프링의 3가지 핵심 고급 개념 이해하기 📢 수강 www.inflearn.com 공통 로직 분리를 위해서 사용함.. https://tlqckd0.tistory.com/105 Spring Proxy Factory Java에서 Proxy사용하는 방법에 대해서 두가지 했었음 1. J..
Java에서 Proxy사용하는 방법에 대해서 두가지 했었음 1. Jdk 동적 Proxy >> Interface가 있어야함. InvocationHandler를 구현해서 객체 생성 후 Proxy를 생성해서 사용 https://tlqckd0.tistory.com/102 Proxy ... Proxy 사용법. 1. InvocationHandler를 구현한 객체를 만듬 생성자에 실제 method를 수행할 객체를 넣어줘야함.. 그리고 다른것도 넣어도 될듯..? args에는 method를 호출 했을 때 넣어주는 인자값들. @Slf4j publ tlqckd0.tistory.com 2. CGLIB >> 인터페이스없이 구체 클레스(인터페이스도 됨)를 사용. MethodInterceptor를 구현 후 Enhancer에 등록 ..
Spring boot를 시작할 때 모든 직접 추가한 모든 Bean을 확인하고 검사하는 로직이 필요할거 같음.. https://tlqckd0.tistory.com/94 Spring 공부 02. 스프링 컨테이너 https://tlqckd0.tistory.com/93 Spring 공부 01. Configuration, Bean import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; 이거 사용해서 Config 를 등록 할 수 있다. ApplicationContext a tlqckd0.tistory.com 그래서 Spring 을 시작하고 나서 바로 실행되게 하는 Com..
이전에 Scope에 Singleton과 prototype에 대해서 했었음 Singleton : Default값임 한번 생성되면 끝까지 스프링 컨테이너에서 하나의 객채로 유지됨 prototype : 생성될때 스프링이 주입만 해주고 끝. 1. request 이거는 HTTP 요청이 들어와서 나갈 때 까지 하나의 객체로 유지되는 Scope임 @Scope(value = "request") @Component public class MyLogger { ... } 2. Provider @RestController @RequiredArgsConstructor public class LogDemoController { ... private final MyLogger myLogger; ... } 그런대 이렇게 개발하고 S..
Spring은 Bean을 관리하면서 singleton으로 하는데 어떤 요청에도 처음 생성했던, 같은 인스턴스 객체를 반환함 그래서 Spring Container가 객체생성, 주입, Bean초기화 ~~ Bean 소멸, Spring Container 종료 될때까지 관리를 해줌 그리고 기본적으로 Spring은 singleton으로 돌아감.. @Scope("singleton") 이걸로 선언해주면 된다고 하는데 Bean의 Default값임 @Test void singletonBeanFind(){ AnnotationConfigApplicationContext ac = new AnnotationConfigApplicationContext(SingletonBean.class); SingletonBean singleto..
1. Spring Bean의 생성 ~ 소멸 1. Spring Bean 은 객체 생성 이후 의존관계를 주입함. 2. 주입이 다 끝나고 나서야 필요한 데이터를 사용 할 수 있음 3. 초기화? 이미 내부에 주입을 해서 setting이 완료된 상태임 4. Bean의 시작, 종료 시점에 callback을 줌 5. 컨테이너 생성 -> 빈 생성 -> 의존관계 주입 -> 초기화 콜백 -> 사용 -> 소멸 콜백 -> 스프링 종료 public class NetworkClient { private String url; public NetworkClient(){ System.out.println("생성자 호출, url = " + url); call("초기화 연결 메시지"); } public void setUrl(String ..
Spring에서 의존관계를 주입 할 때 여러가지 방법이 있음 1. 생성자 주입 @Autowired //생성자가 하나면 Autowired 안 사용해도 되고 // 2개 이상이면 @Autowired 지정해 줘야함. public OrderServiceImpl(MemberRepository memberRepository, DiscountPolicy discountPolicy) { this.memberRepository = memberRepository; this.discountPolicy = discountPolicy; } 해당 방식을 사용 할 때에는 각각의 필드에 private final을 설정하는게 좋다. 2. 필드 주입 @Autowired private MemberRepository memberReposit..