본문 바로가기

분류 전체보기93

@Resource vs @Autowired vs @Inject @Resource 어노테이션이란? @Autowired와 같은 역할을 한다고 보면된다. @Resource 어노테이션은 빈의 이름을 이용해서 주입할 객체를 검색한다. @Resource 어노테이션을 사용하려면 앞서 @Autowired 어노테이션과 마찬가지로 다음의 두가지만 추가하면된다. 자동 주입 대상에 @Resource 어노테이션 사용 XML설정에 설정 추가 @Resource 어노테이션은 빈의 이름을 사용해서 주입할 빈 객체를 찾기 때문에, @Resource 어노테이션의 값으로 빈 객체의 이름을 지정한다. @Autowired와 @Resource, @Inject의 차이점 1. @Autowired : 타입(클래스)로 Bean을 지정한다.(생성자/필드/메서드에 모두 적용 가능) 2. @Resource : Name.. 2022. 10. 27.
[Spring] 웹 스코프 웹 스코프의 특징 웹 스코프는 웹 환경에서만 동작한다. 웹 스코프는 프로토타입과 다르게 스프링이 해당 스코프의 종료시점까지 관리한다. 따라서 종료 메서드가 호출된다. 스코프 종류 request: HTTP 요청 하나가 들어오고 나갈 때 까지 유지되는 스코프, 각각의 HTTP 요청마다 별도의 빈 인스턴스가 생성되고, 관리된다. session: HTTP Session과 동일한 생명주기를 가지는 스코프 application: 서블릿 컨텍스트( ServletContext )와 동일한 생명주기를 가지는 스코프 websocket: 웹 소켓과 동일한 생명주기를 가지는 스코프 MyLogger package hello.core.common; import org.springframework.context.annotation.. 2022. 10. 26.
[Spring] 빈 스코프 - 싱글톤 빈, 프로토타입 스코프 빈 스코프란? 스코프는 번역 그대로 빈이 존재할 수 있는 범위를 뜻한다 스프링 빈은 기본적으로 싱글톤 스코프로 생성됨 스프링은 다음과 같은 다양한 스코프를 지원한다 싱글톤: 기본 스코프, 스프링 컨테이너의 시작과 종료까지 유지되는 가장 넓은 범위의 스코프이다. 프로토타입: 스프링 컨테이너는 프로토타입 빈의 생성과 의존관계 주입까지만 관여하고 더는 관리하지 않는 매우 짧은 범위의 스코프이다 웹 관련 스코프 request: 웹 요청이 들어오고 나갈때 까지 유지되는 스코프이다. session: 웹 세션이 생성되고 종료될 때 까지 유지되는 스코프이다. application: 웹의 서블릿 컨텍스트와 같은 범위로 유지되는 스코프이다. 빈 스코프는 다음과 같이 지정할 수 있다. 컴포넌트 스캔 자동 등록 @Scope(.. 2022. 10. 25.
객체지향 프로그래밍의 5가지 설계 원칙, SOLID 객체지향 5원칙(SOLID)이란? SOLID란 로버트 마틴이 2000년대 초에 명명한 객체 지향 프로그래밍의 다섯 가지 기본 원칙을 마이클 페더스가 원칙의 앞 글자를 따서 다시 SOLID라는 이름으로 소개한 것입니다. SOLID의 5대 원칙을 나열하면 다음과 같습니다. 단일 책임 원칙(Single responsibility principle) : SRP 개방 폐쇄 원칙(Open/closed principle) : OCP 리스코프 치환 원칙(Liskov substitution principle) : LSP 인터페이스 분리 원칙(Interface segregation principle) : ISP 의존관계 역전 원칙(Dependency inversion principle) : DIP 1. 단일 책임의 원칙 .. 2022. 10. 22.