Handler(Controller) 종류 ▪ Simple Controller 클래스– Controller Interface 상속 받아 구현– 기본 구현에 따라 여러 종류가 있다.▪ AbstractController▪ MultiActionController– 구현 : 기본 구현 클래스들을 상속받아 역할에 따라 구현▪ Annotation기반 Controller 클래스 (현재 가장 많이 쓰이는 기법)– Annotation 기반의 Handler는 메소드이다.– 클래스나 메소드의 어노테이션 설정을 통해 작성– POJO 기반으로 작성한다.▪ Spring 3.0 이후 Annotation기반 Handler 방식 구현이 추세가 됨. Annotation기반 Handler - 개요 ▪ 클래스는 POJO로 구현 한 뒤 빈으로..
Spring MVC 란?▪ Spring에서 지원하는 Web Framework▪ MVC 패턴 및 Front Controller 패턴 기반▪ FrontController인 DispatcherServlet을 제공– 사용자 요청을 처리하기 위한 각종 Controller(Spring에서는 Handler 라고 함)을 구현– 사용자 요청이 왔을 때 그것을 처리하는 Controller를 요청하기 위한 다양한 Component들을제공한다.▪ Spring Container가 제공하는 기능과 다양한 오픈소스 프레임 워크와의 연동을지원한다. Spring MVC 구성 주요 컴포넌트▪ DispatcherServlet– Front Controller▪ HandlerMapping– 클라이언트의 요청을 처리할 Controller를 찾..
o Dependency 추가 - Spring webmvc 링크http://mvnrepository.com/artifact/org.springframework/spring-webmvc/4.3.9.RELEASE- JSTL 링크http://mvnrepository.com/artifact/jstl/jstl/1.2 web.xml spring_mvc_basic index.html index.htm index.jsp default.html default.htm default.jsp spring org.springframework.web.servlet.DispatcherServlet 1 spring *.do encodingFilter org.springframework.web.filter.CharacterEncodin..
Transaction Manager▪ Transaction을 처리하는 객체 – Transaction의 경계를 관리한다. – 경계란 : 트랜잭션의 시작, 정상종료(commit), 비정상종료(rollback) 결정▪ Spring 제공 주요 Transaction Manager – DataSourceTransactionManager▪ Connection의 Transaction API 이용해 관리▪ JDBC API, MyBatis 이용 시 사용▪ Property로 DAO가 사용하는 DataSource를 제공 받아야 한다. – JpaTransactionManager▪ JPA(Java Persistence API)를 이용하여 Data처리한 경우 사용한다. – JtaTransactionManager▪ 분산 Transa..
o 비지니스 로직 공통 비지니스 로직( Cross Cutting Concern ) + 핵심 비지니스 로직( Core Concern ) 으로 구성되어 있다 하나의 Business Logic에서 공통로직과 핵심 로직을 분리해서 구현하는 것이다공통비지니스 로직은 실행환경(컨테이너)가 처리한다.핵심로직과 공통로직을 완벽히 분리해서 개발자가 핵심 비지니스 로직에 집중할수 있게 해준다. o AOP 용어 Joinpoint - 공통관심사항이 적용될 수 있는 지점 Pointcut - 공통관심사항을 적용할 대상들 (핵심관심사항) Advice - 공통관심사항을 어느 시점에 핵심 관심사항에 적용할지에 대한 정의 - 시점 5가지 : before, after-returning, after-throwing, after, acoun..
Sql Session이 Interface이기 때문에 Spring이랑 연동하기 위해서는 Mybatis와 Spring을 연결해주는 API를 Spring Container에 등록해서 사용해야한다. 트랜잭션 처리는 Spring 트랜잭션이 담당한다. Sql Session - (API설정 후) SqlSessionTemplateSql SessionFactory - (API설정 후) SqlSessionFactoryBean = ServiceImpl ↑ DAOImpl ↑SqlSessionTemplate1.생성자 (변수 : SqlSessionFactory ↑SqlSessionFactoryBean ( setter사용 )1.dataSource2.configLocation - mybatis 전역 설정 파일 위치 ↑BasicDat..