spring
[CS스터디]220607 Spring - 3
Servlet Filter와 Spring Interceptor의 차이는 무엇인가요? Servlet Filter Servlet Filter는 디스패처 서블릿에 요청이 전달되기 전/후에 url 패턴에 맞는 모든 요청에 대해 부가작업을 처리할 수 있는 기능을 제공한다! 이 그림에서 처럼 필터는 스프링의 범위 밖에서 처리가 되는 것임!! 그니까 스프링 컨테이너가 아닌 톰캣과 같은 웹 컨테이너에 의해 관리가 되는 것임! (스프링 빈으로 등록은 됨) 필터를 추가하기 위해서는 javax.servlet의 Filter 인터페이스를 구현해야 함 init(), doFilter(), destroy() 메서드가 존재함 쓰이는 용도 공통된 보안 및 인증/인가 관련 작업 모든 요청에 대한 로깅 또는 감사 이미지/데이터 압축 및 문..
[CS스터디]220602 Spring - 2
DI의 종류는 어떤 것이 있고, 이들의 차이는 무엇인가요? DI의 종류에는 Constructor Injection(생성자 주입)과 Field Injection(필드 주입), Setter Injection(수정자 주입)이 있음 1. 생성자 주입 1 2 3 4 5 6 7 8 9 10 11 12 13 14 @Component public class ABean { private BBean b; public ABean(BBean b) { this.b=b; } public void bMethod() { b.print(); } } cs 생성자를 위한 빈 주입은 위와 같이 생성자의 매개변수로 의존 주입할 빈을 매개변수로 넣어준다. 스프링 4.3 버전 이후로는 생성자 의존주입에 @Autowired를 넣을 필요는 없다. ..
[CS스터디]220601 Spring - 1
Spring DI/IoC는 어떻게 동작하나요? 어떻게 동작하는지 알기 전에 얘네가 무엇인지를 먼저 알아야 하는데 DI(Dependency Injection)/IoC(Inversion of Control)란? DI는 말 그대로 '의존성 주입'이고, IoC는 '제어의 역전'이다. Spring 프레임 워크를 사용하기 전에 쌩 자바로 코딩을 하면 무언가(메서드나 객체)를 가져다 쓸 때 그 무언가가 있는 라이브러리 등을 가져다 쓴다고 미리 알려주고 써야된다. 예를 들면 자바 프로그램은 main() 에서부터 시작을 하는데 그 안에 있는 애들을 어디서 가지고 와서 사용하는지 명시해줘야 한다. IoC는 이렇게 메서드나 호출 작업을 개발자가 결정하는 것이 아니라 외부에서 결정되는 것을 의미한다! - 객체 지향 언어에서 ..