@PostConstruct, @PreDestroy 어노테이션은 객체의 라이프 사이클 초기화 및 종료 과정을 제공합니다. 1. @PostConstruct - @PostConstruct 어노테이션은 초기화 작업을 할 메소드에 적용되며, @PostConstruct 어노테이션이 적용된 초기화 메서드는 WAS가 띄워질 때 실행된다. 2. @PreDestroy - @PreDestroy 어노테이션은 컨테이너에서 객체를 제거하기 전에 실행된다. @PostConstruct public void init(){ System.out.println("초기화"); } @PreDestroy public void destory(){ System.out.println("종료"); }
스프링 시작시점에서 프로그램을 동작할 수 있도록 하는데에는 세가지가 있습니다.1. CStartEventHandler 클래스를 제작하고 contextRefreshedEvent 메소드2. ApplicationListener 인터페이스를 구현한 onApplicationEvent(ContextRefreshedEvent event) 메소드3. ServletContextListener 인터페이스를 구현한 contextInitialized(ServletContextEvent arg0) 메소드 1번 코드123456789101112@Componentpublic class CStartEventHandler { private static final Logger logger = LoggerFactory.getLogger(CS..
Secure Coding------------------------------------1. SQL Injection2. XSS3. CSRF Spring Security------------------------------------Authentication : 인증Authorization : 권한 1. Authentication(1) Credential 기반 인증 - 아이디, 패스워드를 이용해 인증하는 방식, 가장 쉽고 널리 사용되는 방식(2) 이중 인증(3) 물리 인증 2. Authorization리소스에 대한 권한 부여 : intercept DelegatingFilterProxy -> Spring Security DelegatingFilterProxy클래스가 클라이언트와 리소스 사이에서 가로채서 S..
(1)개발자 테스트, 단위 테스트(2)테스트의 문제점1) 특정 모듈의 개발기간이 길어질수록 개발자의 목표의식이 흐려진다.2) 작업 분량이 늘어날 수록 확인이 어려워진다.3) 코드의 사용방법과 변경이력을 개발자의 기억력에 의존하게 되는 경우가 많다.4) 테스트값 입력시 점점 간소화 된다.5) 코드 수정시 기존코드의 정상동작에 대한 보장이 없다.- 회귀 테스트6) 테스트 할 준비사항이 너무 많아진다. (3) TDD1) Test the program before you write it. - kent beck2) 최종 목표clean code that works - Ron Jeffries3) 진행 방식질문 -> 응답 -> 정제 -> 반복4) 실습 시나리오---------------------------------..
Spring 스프링 다운로드 : http://spring.io/tools/sts/all 1. Framework2. Spring.io3. 전자정부 프레임워크4. 특징(1) J2EE가 제공하는 다수의 기능을 제공(2) 경량 프레임워크(3) DI패턴을 지원(4) AOP패턴을 지원(5) POJO(Plain Old Java Object)를 지원(6) Transaction 처리를 위한 일관성있는 방법을 제공(7) 영속성(Data Persistence)과 관련된 다양한 API 제공 5. DI(Dependency Injection) 패턴(1) IOC(Inversion of Control) 컨테이너(2) 주입 방법1) 생성자2) setter메소드 (3) 빈의 라이프 사이클1) BeanNameAwarevoid setBea..
인증(Authentication) 권한(체크) - (Authority)
Tiles 받는 링크http://mvnrepository.com/artifact/org.apache.tiles/tiles-jsp/3.0.7 org.springframeworkspring-webmvc4.3.9.RELEASEjstljstl1.2org.apache.tilestiles-jsp3.0.7 경로 : window -> preperence -> xml files -> template -> new
MVC 네임스페이스▪ Spring MVC 관련된 설정 중 자주 사용되는 설정들을 자동으로 처리해 준다. ▪ – Annotation 기반 Controller 구현시 필요한 다양한 bean들을 자동으로 등록해 준다.– mvc 네임스페이스의 다른 태그들을 쓰기 위해서는 반드시 지정해야 한다. ▪ – handler를 거치지 않고 view를 호출 할 수있도록 설정하는 태그– 단순 링크에 주로 사용한다.– login.do 요청이 들어오면 /WEB-INF/view/loginform.jsp 가 응답한다. ▪ – Intercepter Bean 등록하는 태그.– Intercepter ▪ 특정 URL요청 시 Handler 실행 전에 호출 되는 컴포넌트 : interceptor 등록 태그 : interceptor를 호출 할 ..
MVN 검색 : jackson 키워드로 조회 - jackson databind@ResponseBody 에서 VO나 배열이나 컬렉션(Set/List/Map)을 리턴하면 JSON 문자열로 변환처리http://mvnrepository.com/artifact/com.fasterxml.jackson.core/jackson-databind/2.8.9
web-servlet.xml ProductController.java package domain.controller; import org.springframework.beans.factory.annotation.Autowired;import org.springframework.stereotype.Controller;import org.springframework.validation.BindingResult;import org.springframework.web.bind.annotation.ModelAttribute;import org.springframework.web.bind.annotation.RequestMapping; import domain.service.ProductService;import ..