카테고리 전체 보기
-
[Spring] 02-2. ViewResolver 설정프로그래밍/Spring 2015. 9. 15. 22:57
SPRING 컨트롤러는 뷰에 의존적이지 않다. 컨트롤러가 지정한 뷰 이름으로부터 응답 결과 화면을 생성하는 View 객체는 ViewResolver가 구한다. SPRING은 몇 가지 ViewResolver 구현 Class를 제공하고 있는데, 이중 주요 ViewResolver 구현 Class는 아래와 같다. InternalResourceViewResolver : 뷰 이름으로부터 JSP나 Tiles 연동을 위한 View 객체를 리턴한다. VelocityViewResolver : 뷰 이름으로부터 Velocity 연동을 위한 View 객체를 리턴한다. VelocityLayoutViewResolver : VelocityViewResolver와 동일한 기능을 제공하며, 추가로 Velocity의 레이아웃 기능을 제공한..
-
[Spring] 01-11. ModelAttribute Annotation을 이용한 모델 데이터 처리프로그래밍/Spring 2015. 9. 15. 12:32
@ModelAttribute Annotation을 이용하면 다음의 두 가지 작업을 수행할 수 있다.- @ModelAttribute Annotation이 적용되지 않은 별도 메서드로 모델에 추가될 객체를 생성- 커맨드 객체의 초기화 작업을 수행 * 참조 데이터 생성 - WEB Application을 구현하다 보면 동일한 모델 데이터를 두 개 이상의 요청 처리 결과 화면에서 보여주어야 할 때가 있다.예를 들어, 검색 메인 화면과 검색 결과 화면에서 검색 타입과 인기 검색어를 보여줄 수 있을 것이다. 이 경우 이들 공통 모델 데이터를 설정해 주는 메서드를 구현한 뒤 요청 처리 메서드에서 호출하도록 구현할 수 있을 것이다. @ModelAttribute Annotation을 사용하면 이런 단점 없이 두 개 이상의..
-
[Spring] 01-10. 컨트롤러 메서드의 리턴 타입프로그래밍/Spring 2015. 9. 15. 10:40
컨트롤러 메서드는 ModelAndView를 비롯한 몇 가지 리턴 타입을 가질 수 있으며, 이들 리턴 타입은 다음과 같다. ModelAndView : 뷰 정보 및 모델 정보를 담고 있는 ModelAndView 객체. Model : 뷰에 전달할 객체 정보를 담고 있는 Model을 리턴한다. 이때 뷰 이름은 요청 URL로부터 결정된다. (RequestToViewNameTranslator를 통해 뷰 결정) Map : 뷰에 전달할 객체 정보를 담고 있는 Map을 리턴한다. 이때 뷰 이름은 요청 URL로부터 결정된다. (RequestToViewNameTranslator를 통해 뷰 결정) String : 뷰 이름을 리턴한다. View 객체 : View 객체를 직접 리턴. 해당 View 객체를 이용해서 뷰를 생성한다...
-
[Spring] 01-9. CookieValue Annotation을 이용한 쿠키 Mapping, 파라미터 타입 정리프로그래밍/Spring 2015. 9. 14. 15:24
@CookieValue Annotation을 이용하면 쿠키 값을 파라미터로 전달받을 수 있다. @CookieValue Annotation은 해당 쿠키가 존재하지 않으면 기본적으로 500 에러를 발생시킨다. 따라서, 쿠키가 필수가 아닌 경우에는 required 속성의 값을 false로 지정해 주어야 한다. required 속성의 기본 값은 true이다.required 속성의 값을 false로 지정할 경우, 해당 쿠키가 존재하지 않으면 null을 값으로 전달받게 된다. @RequestParam Annotation과 마찬가지로 defalutValue 속성을 이용해서 기본 값을 설정할 수도 있다. [CookieController.java]123456789101112131415161718192021222324pa..
-
[Spring] 01-8. 컨트롤러 메서드의 파라미터 타입프로그래밍/Spring 2015. 9. 14. 14:52
컨트롤러의 @RequestMapping Annotation이 적용된 메서드는 커맨드 Class뿐만 아니라 HttpServletRequest, HttpSession, Locale 등 WEB Application과 관련된 다양한 타입의 파라미터를 가질 수 있는데, 전달 가능한 파라미터 타입은 아래와 같다. * @RequestParam Annotation을 이용한 파라미터 Mapping컨트롤러를 구현하면서 가장 많이 사용되는 Annotation이 바로 @RequestParam Annotation이다.@RequestParam Annotation은 HTTP 요청 파라미터를 메서드의 파라미터로 전달받을 때 사용된다. @RequestParam Annotation이 적용된 파라미터는 기본적으로 필수 파라미터이다. 따라..
-
[Spring] 01-7. HTML 폼과 커맨드 객체(JavaBean)프로그래밍/Spring 2015. 9. 13. 22:15
SPRING MVC는 HTML 폼에 입력한 데이터를 Java빈 객체를 이용해서 전달 받을 수 있도록 하고 있다. 예을 들어, 다음과 같이 HTML 폼의 항목 이름과 Java빈 Class의 프로퍼티 이름이 일치할 경우 폼에 입력한 값을 해당 Java빈 Class의 프로퍼티 값으로 설정해주는 기능을 제공하고 있다. HTML 폼에 입력한 데이터를 Java빈 객체로 전달받는 방법은 매우 간단하다. 단지 @RequestMapping Annotation이 적용된 메서드의 파라미터로 Java빈 타입을 추가해주기만 하면 된다. 뷰에서 커맨드 객체 접근하기: 뷰 Code에서는 컨트롤러의 @RequestMapping Annotation 메서드에서 전달받은 커맨드 객체에 접근할 수 있다. [Orderitem.java] 12..
-
[Spring] 02-1. 뷰 영역 구현프로그래밍/Spring 2015. 9. 11. 15:18
컨트롤러는 최종적으로 결과를 출력 할 뷰와 뷰에 전달할 객체를 담고 있는 ModelAndView 객체를 리턴한다. DispatcherServlet은 ViewResolver를 사용하여 결과를 출력할 View 객체를 구하고, 구한 View 객체를 이용하여 내용을 생성한다. 컨트롤러가 지정한 뷰 이름으로부터 응답 결과 화면을 생성하는 View 객체는 ViewResolver가 구한다. SPRING은 몇 가지 ViewResolver 구현 Class를 제공하고 있는데, 이중 주요 ViewResolver 구현 Class는 아래와 같다. InternalResourceViewResolver : 뷰 이름으로부터 JSP나 Tiles 연동을 위한 View 객체를 리턴한다. VelocityViewResolver : 뷰 이름으로..
-
[Spring] 01-6. 컨트롤러 구현 및 전체적인 실행과정프로그래밍/Spring 2015. 9. 11. 11:24
SPRING 3.0버전부터는 @Controller Annotation을 이용해서 컨트롤러 Class를 구현하도록 권장하고 있으며 기존의 Controller Interface와 AbstractController Class, AbstractCommandController Class 등은 이제 고전 컨트롤러 (ClassicController)로 불리고 있다. @ModelAttribute Annotation을 이용해서 커맨드 객체의 모델 이름을 지정했다면, 뷰 Code에서는 다음과 같이 해당 모델 이름을 사용해서 커맨드 객체에 접근할 수 있다.제목 : ${command.title} [NewArticleCommand.java]1234567891011121314151617181920212223242526272829..