.
프록시를 적용하기 위해 적용 대상의 숫자 만큼 많은 프록시 클래스를 만들어야 한다.적용 대상이 100개면 프록시 클래스도 100개 만들어야한다..이러한 프록시 클래스의 100개를 살펴보면프록시의 로직은 같은데(중복 발생), 적용 대상만 차이가 있는 것이다.이 문제를 해
스프링 빈은 간단하게 다음과 같은 라이프사이클을 가진다.객체 생성 의존관계 주입스프링 빈은 객체를 생성하고, 의존관계 주입이 다 끝난 다음에야 필요한 데이터를 사용할 수 있는 준비가 완료된다. 따 라서 초기화 작업은 의존관계 주입이 모두 완료되고 난 다음에 호출해야 한
스프링은 다음과 같은 다양한 스코프를 지원한다.싱글톤: 기본 스코프, 스프링 컨테이너의 시작과 종료까지 유지되는 가장 넓은 범위의 스코프이다.프로토타입: 스프링 컨테이너는 프로토타입 빈의 생성과 의존관계 주입까지만 관여하고 더는 관리하지 않는 매우 짧은 범위의 스코프이
객체지향적으로 코드를 짜고 싶은데 싱글톤이 앞길을 막고 있다.
싱글톤 빈이 매번 일회용 빈을 생성하는 상황은 스프링 프레임워크와 같은 의존성 주입 환경에서 종종 발생합니다.이러한 패턴은 특정 비즈니스 요구 사항을 충족시키기 위해 사용될 수 있습니다.1.웹 요청 처리: 웹 애플리케이션에서 싱글톤 컨트롤러는 각 요청마다 새로운 요청
HTTP 메세지를 확인하기 위한 긴 과정이 있다.다음과 같은 Post 전송이 왔으면,아래의 절차(웹 애플리케이션 서버 직접 구현)가 있어야 Post 메세지를 확인할 수 있다.메세지가 올때마다 중복되는 절차들을 누가 대신 담당해줬으면 좋겠다.서블릿은 HTTP 메시지를 읽
자바 웹 애플리케이션 개발에서 중요한 두 가지 컨테이너, Bean 컨테이너와 Servlet 컨테이너에 대해 알아보겠습니다. 이 두 컨테이너는 자바 애플리케이션의 구성과 실행에 핵심적인 역할을 합니다.빈 컨테이너 (Bean Container)정의스프링 프레임워크의 핵심
궁금한것.1\. 서블릿 객체 누가 호출 해주는지.2\. 연결이 많아지는 경우, 정말 생성된 서블릿(싱글톤) 하나로 다들 공유해서 쓰는지.쓰레드다.그렇다. 생성된 서블릿 하나로 공유해서 사용한다.
\[이전 학습 내용]- 리플렉션,프록시,JDK 다이나믹 프록시, CGLIB
빈 후처리기의 기능은 막강하다.객체를 조작할 수도 있고, 완전히 다른 객체로 바꿔치기 하는 것도 가능하다.빈 등록 과정을 빈 후처리기와 함께 살펴보자1\. 생성: 스프링 빈 대상이 되는 객체를 생성한다. ( @Bean , 컴포넌트 스캔 모두 포함)2\. 전달: 생성된
프록시 적용 대상 여부를 체크해서 꼭 필요한 곳에만 프록시를 적용한다.(빈후처리기-자동프록시생성)Advisor안의 포인트컷을 사용해서 해당 객체가 프록시 적용 대상인지 판단.True? -> 프록시 생성. 프록시의 어떤 메서드가 호출 되었을 때 어드바이스를 적용할 지 판
수동보다 자동으로 빈 후처리기가 등록 되기 때문에,adviser만 빈 등록 하면 된다.
(스프링 부트 - AOP 라이브러리 사용 가정)스프링 애플리케이션에 프록시를 적용하려면 포인트컷과 어드바이스로 구성되어 있는 어드바이저( Advisor )를 만들 어서 스프링 빈으로 등록하면 된다. 그러면 나머지는 앞서 배운 자동 프록시 생성기가 모두 자동으로 처리해준
스프링 부트는 데이터소스( DataSource )를 스프링 빈에 자동으로 등록한다.
무지성 @Transactional을 하고 계신다면...