Spring Framework: 317개의 글
AspectJ Weaver를 사용한 애노테이션 기반의 스프링 AOP 구현 방법 AOP란? - Aspect Oriented Programming : 관점 지향 프로그래밍 - OOP 와 분리된 개념이 아니라, OOP에 기초를 두는 프로그래밍 방식 - 하나의 프로그램을 관점(혹은 관심사)라는 논리적인 단위로 분리하여 관리하는 개념 - 로깅, 감사, 선언적 트랜젝션, 보안, 캐싱 등 다양한 곳에서 사용된다. AOP 용어 - Joint Point : 모듈이 삽입되어 동작하게 되는 특정 위치(메서드 호출 등) - Point Cut : 다양한 Joint Point 중에 어떤 것을 사용할지 선택 - Advice : Joint Point에 삽입되어 동작할 수 있는 코드 - Weaving : Advice를 핵심 로직 코드..
AspectJ Weaver를 사용한 XML 기반의 스프링 AOP 구현 방법 AOP란? - Aspect Oriented Programming : 관점 지향 프로그래밍 - OOP 와 분리된 개념이 아니라, OOP에 기초를 두는 프로그래밍 방식 - 하나의 프로그램을 관점(혹은 관심사)라는 논리적인 단위로 분리하여 관리하는 개념 - 로깅, 감사, 선언적 트랜젝션, 보안, 캐싱 등 다양한 곳에서 사용된다. AOP 용어 - Joint Point : 모듈이 삽입되어 동작하게 되는 특정 위치(메서드 호출 등) - Point Cut : 다양한 Joint Point 중에 어떤 것을 사용할지 선택 - Advice : Joint Point에 삽입되어 동작할 수 있는 코드 - Weaving : Advice를 핵심 로직 코드에 ..
[Spring] @Component 애노테이션 및 함께 사용하는 애노테이션 정리 스프링 빈 설정 XML 파일에 나 자바 @Configuration 클래스에서 @Bean을 붙여 빈을 등록하던 것처럼 빈 클래스에 @Component 애노테이션을 붙여 빈을 등록할 수 있다. 즉 @Component를 사용해서 빈 설정 파일이 아니라 빈 클래스에서 빈을 직접 등록할 수 있다. Component Scan 설정 @Component를 붙인 클래스를 스캔할 수 있도록 설정해 주어야 한다. 1) XML 설정을 사용할 경우 태그의 base-package에 스캔할 패키지를 설정한다. 패키지가 여러개인 경우 를 여러개 작성할 수 있다. 2) @Configuration 설정을 사용할 경우 @Configuration // 지정된 ..
[Spring] 애노테이션을 이용한 빈 설정 방법 정리 빈 설정을 하기 위해 사용되는 스프링 애노테이션 @Required, @Autowired, @Qualifier, @Value과 JSR-250 애노테이션 @PostConstruct, @PreDestroy, @Resource에 대해 알아보자 이 애노테이션들을 사용해 기존에 XML 빈 설정 파일에 모두 작성하던 빈 설정을 빈 클래스에 직접 설정할 수 있다. XML 설정에 애노테이션 빈 설정을 사용하기 위한 코드 추가 context 네임 스페이스와 코드를 추가한다. 이렇게 설정하면 빈 설정을 XML 파일이 아닌 빈 클래스의 애노테이션을 검색해 반영한다. @Required - setter에 붙여 반드시 주입해야하는 프로퍼티로 설정하는 애노테이션 - Spring..
[Spring] 스프링 XML 설정 → 애노테이션 설정 변환 방법 스프링 프레임워크를 사용은 XML 설정을 이용하는 방법과 자바 애노테이션 기반의 설정을 이용하는 두 가지 방법으로 구분할 수 있다. (참고 - 스프링 XML 설정 방법 : [Spring] 스프링 XML 설정 파일 작성 방법 정리) 본 글에서는 스프링의 XML 설정을 애노테이션 설정으로 변환하는 방법에 대해 다룬다. 📄 목차 1. 스프링 애노테이션 기반 설정 기본 포맷 2. 기본적인 빈 설정 방법 - 자동 주입 설정 - autowire 속성 3. DI(Dependency Injection) 설정 - 생성자 주입 - 프로퍼티 주입 - 프로퍼티 주입 - List 타입 - 프로퍼티 주입 - Map 타입 4. ApplicationContext 객체..
[Spring] 스프링 빈(Bean)이 초기화, 소멸 시 특정 작업을 하는 방법 방법 1: InitializingBean, DisposableBean 인터페이스 구현 방법 2: 스프링 XML 설정 사용 1. 인터페이스 구현 Spring에서 제공하는 InitializingBean, DisposableBean 인터페이스를 구현한다. public class BookDao implements InitializingBean, DisposableBean { @Override public void afterPropertiesSet() throws Exception { // 빈 초기화 시 코드 구현 } @Override public void destroy() throws Exception { // 빈 소멸 시 코드 구..
[Spring] 의존성 주입 애노테이션 정리 - @Autowired, @Resource, @Inject 1. @Autowired @Autowired는 주입하려고 하는 객체의 타입이 일치하는 객체를 자동으로 주입한다. @Autowired는 필드, 생성자, Setter에 붙일 수 있다. 단, @Autowired를 필드, Setter에 붙여서 사용할 경우 반드시 기본 생성자가 정의되어 있어야 한다. 1) @Autowired - 필드 주입 public class WordRegisterServiceUseAutowired { @Autowired private WordDao wordDao; public WordRegisterServiceUseAutowired() { } } 2) @Autowired - 생성자 주입 p..
[Spring] 스프링 XML 설정 파일 작성 방법 정리 📄 목차 1. 스프링 XML 설정 파일 포맷 - 기본 포맷 - 애노테이션 설정을 사용하기 위한 포맷 2. 빈(Bean) 설정 예시 - 자동 주입 설정 - autowire 속성 3. DI(Dependency Injection) 설정 - 생성자 주입 - 프로퍼티 주입 - 프로퍼티 주입 - List 타입 - 프로퍼티 주입 - Set 타입 - 프로퍼티 주입 - Map 타입 - 프로퍼티 주입 - Properties 타입 4. ApplicationContext 객체 생성 - 스프링 XML 설정 파일이 한 개인 경우 - 스프링 XML 설정 파일이 여러 개인 경우 - 스프링 XML 설정 파일이 여러 개인 경우(import 태그 사용) 1. 스프링 XML 설정 파..
Servlet에서 스프링 ApplicationContext 사용하기 pom.xml org.springframework spring-webmvc 5.1.3.RELEASE 스프링 ApplicationContext, 즉 스프링 IoC를 사용하려면 관련 의존성을 추가해야 한다. spring-context 라이브러리를 가져올 수 있도록 의존성을 추가한다. 위 예제에서는 spring-webmvc를 가져오도록 했지만 spring-context만 가져와도 된다. web.xml org.springframework.web.context.ContextLoaderListener contextClass org.springframework.web.context.support.AnnotationConfigWebApplication..
[Spring] SpEL - Spring Expression Language SpEL(Spring Expression Language)란? Spring expression language는 보통 SpEL로 표기하며 구두로는 스프링 EL이라고 지칭한다. SpEL은 보통 객체를 조회하고 조작하는 기능을 제공하여 Unified EL과 유사하지만 메소드 호출, 문자열 템플릿 기능 등의 여러가지 추가 기능을 제공하는 표현식 언어이다. OGNL, MVEL, JBoss EL 등 자바에서 사용가능한 여러 EL이 있지만 SpEL은 Spring 프로젝트 전반에 걸쳐 사용하기 위해 만들어졌으며 스프링 3.0부터 지원된다. SpEL 표기법 #{ SpEL표현식 } JSP에서 EL을 사용해서 객체의 프로퍼티를 꺼낼때 ${ } 이..