[스프링3.2강좌, 스프링교육, 스프링강좌]스프링 ApplicationContext, Spring Framework3.2, BeanFactory
- BeanFactory의 모든 기능 제공(BeanFactory 인터페이스를 상속)
- 스프링에서 권장하는 방식으로 스프링 DI 뿐 아니라 트랜잭션, AOP 서비스, 국제화를 위한 메시지 소스, 애플리케이션 이벤트 처리
- Spring Framework2.5 이상부터 ApplicationContext 설정시 자바 애노테이션을 지원
- XML ? Annotation 방식
XML 설정 방식을 쓰면 모든 설정을 자바코드로 부터 외부 XML에 둠
애노테이션 방식의 경우 자바코드 내에서 DI 설정을 정의
둘 동시에 사용되는 경우 XML 설정이 우선
주로 데이터소스, 트랜잭션매니저, JMX, JMS커넥션팩터리등 애플리케이션
애노테이션 방식의 경우 자바코드 내에서 DI 설정을 정의
둘 동시에 사용되는 경우 XML 설정이 우선
주로 데이터소스, 트랜잭션매니저, JMX, JMS커넥션팩터리등 애플리케이션
- 인프라스트럭처에는 XML 파일에 저장하고 DI 설정은 애노테이션에서 정의.
- Context 시작 시 모든 Singleton Bean을 미리 로딩(preloading) 시킴-> 초기에 설정 및 환경에 대한 에러 발견 가능함
- 다수의 ApplicationContext 구현 클래스 제공, 다양한 Resource 로딩 방법 제공
(XmlWebApplicationContext,FileSystemXmlApplicationContext,ClassPathXmlApplicationContext)
- Spring의 AOP기능, 메시지 자원 핸들링, 이벤트 위임, 웹 어플리케이션에서 사용하기 위한 WebApplicationContext와 같은 특정 어플리케이션 컨텍스트를 이용한 통합과 같은 다른 기능을 추가 제공한다
[ApplicationContext(애노테이션 기반 스프링 설정 XML 파일) 예제]
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:context=http://www.springframework.org/schema/context
xmlns:p="http://www.springframework.org/schema/p"
xmlns:c=http://www.springframework.org/schema/c
Xmlns:util=“http://www.springframework.org/schema/util”
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.1.xsd
http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.1.xsd
http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-context-3.1.xsd ">
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:context=http://www.springframework.org/schema/context
xmlns:p="http://www.springframework.org/schema/p"
xmlns:c=http://www.springframework.org/schema/c
Xmlns:util=“http://www.springframework.org/schema/util”
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.1.xsd
http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.1.xsd
http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-context-3.1.xsd ">
<description>Example configuration to get you started.</description>
<context:annotation-config/>
<context:component-scan base-package="onj.mall.app" />
</beans>
<context:component-scan base-package="onj.mall.app" />
</beans>
beans를 기본 네임스페이스로 설정
context 네임스페이스 : ApplicationContext 설정지원
p 네임스페이스 : 세터주입을 쉽게 하기 위한 DI설정 제공
c 네임스페이스 : 생성자주입을 쉽게 하기 위한 DI설정 제공
util 네임스페이스 : DI설정에 유용한 유틸리티 제공
context 네임스페이스 : ApplicationContext 설정지원
p 네임스페이스 : 세터주입을 쉽게 하기 위한 DI설정 제공
c 네임스페이스 : 생성자주입을 쉽게 하기 위한 DI설정 제공
util 네임스페이스 : DI설정에 유용한 유틸리티 제공
오라클자바커뮤니티에서 설립한 개발자교육6년차 오엔제이프로그래밍 실무교육센터
(오라클SQL,튜닝,힌트,자바프레임워크,안드로이드,아이폰,닷넷 실무개발강의)
댓글 없음:
댓글 쓰기