Spring Overall Quick View

From JCFWiKi

Jump to: navigation, search

그림:check.gif

  • 산출물 : Spring Framework 이해하기
  • 작성자: 김민아
  • 최초작성일 : 2008/05/21
  • 최종작성일 : 2008/05/21

Copyright © 2008 Daewoo Information Systems Co., Ltd.

목차

[편집] 개요 및 특징

  • Full-stack JavaEE application Framework
  • EJB를 사용하지 않고 middle tier objects를 구성할 수 있는 Light Weight Container
  • 단일 DB와 연동하는 경우만 EJB나 JTA 사용 없이 트랜잭션 관리가 가능함
  • JDBC or O/R Mapping Product인 TopLink, Hibernate or JDO 구현을 사용하는 프레임워크를 제공
  • 스프링의 주요 구성 요소
spring 특징
spring 특징
  • Core
    • Spring 프레임워크의 근간이 되는 Ioc(또는 DI)기능을 지원하는 영역을 담당.
    • BeanFactory를 기반으로 Bean클래스를 제어 할 수 있는 기능을 지원
  • Context
    • Core 패키지와 마찬가지로 Spring의 기본기능으로 Bean들에 대한 접근방법을 제공
  • DAO
    • JDBC 기반 하의 DAO 개발을 좀 더 쉽고, 일관된 방법으로 개발하는 것이 가능하도록 지원
  • ORM
    • Object Relation Mapping 프레임워크인 Hibernate, iBatis, JDO와의 결함을 지원
  • AOP
    • Spring 프레임워크에 Aspect Oriented Programming을 지원
  • Web
    • Struts, Webwork와 같은 프레임워크의 통합을 지원하는 부분을 담당
  • WebMVC
    • Spring 프레임워크에서 독립적으로 Web UI Layer에 Model-View-Controller을 지원하기 위한 기능

[편집] 주요개념

Spring의 주요개념
Spring의 주요개념

[편집] POJO

  • POJO
    • 평범한 Java 객체
    • 복잡한 EJB 컨테이너에 의존하지 개발자가 쓰기 편한 간단한 Object
    • 필수요소
      • light-weight (possibly)
      • flexible
      • simple
      • supported by separate optional components such as Hibernate or Spring

[편집] IOC

스프링 핵심 개념 - Ioc 이해하기

[편집] AOP

스프링 핵심 개념 - Aop 이해하기

[편집] 스프링 프레임 워크 적용방법

[편집] 설정파일 작성

  • web.xml 파일

일반적으로 web.xml에 context 파라미터로 applicationContext.xml 파일의 위치를 제공하고, 스프링 프레임워크의 리스너를 등록하여 스프링 프레임워크를 초기화 한다.

  • 이외에 직접 프로그램 상에서 물리적인 xml 파일 위치를 통해서 가져오는 방법과 서블릿 컨텍스트를 통해서 스프링을 초기화 시켜주는 방법이 있다.
<web-app><context-param>
  <param-name>contextConfigLocation</param-name>
  <param-value> 
	/WEB-INF/classes/config/applicationContext*.xml
  </param-value>
</context-param>
 
<listener>
  <listener- class>org.springframework.web.context.ContextLoaderListener
  </listener- class>
</listener>
... 
</web-app>
  • ApplicationContext 설정파일
  • 스프링 프레임워크의 어플리케이션 컨텍스트를 초기화 하기 위한 XML 파일
  • 자바 클래스들과 그들간의 의존성을 정의
  • 스프링 프레임워크는 ApplicationContext에 정의된 자바 클래스들을 관리하고 서비스를 제공하기 위한 준비를 한다.
  • 어플리케이션에서 공통으로 사용하는 기능들(dataSource관리, tx관리)위한 ApplicationContext.xml 파일과
  • 각 모듈에 대한 DI를 관리하기 위한 ApplicationContext_xx.xml 파일이 있다.
ApplicationContext_xx.xml 파일
ApplicationContext_xx.xml 파일

[편집] SeviceImpl

  • 기본 CRUD
package jcf.biz.user.service;
public class UserServiceImpl {
	/************ PROPERTIES **************/
	private UserDAO userDAO;
	/********* SERVICE METHODS*********/
	public void createUser(User user) {
		userDAO.createUser(user);
	}
	public List findUserList() {
		return userDAO.findUserList();
	}
	public User findUser(String userId) {
		return userDAO.findUser(userId);
	}public void updateUser(User user) {
		userDAO.updateUser(user);
	}	
	/************** GETTER & SETTER ****************/
	public void setUserDAO(UserDAO dao) {
		this.userDAO = dao;
	}
}