티스토리 뷰
Spring MVC 5-4 Annotation 기반 설정
Annotation 관련 설정
Controller가 아주 많아지면? --> XML 설정 파일이 복잡해짐.
Controller도 Annotation 지원(Spring 2.5부터)
action-servlet.xml |
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context" xsi:schemalLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/contxt/springcontext-3.0.xsd"> <context:component-scan base-package="com.multicampus.view" /> </beans> |
<context:component-scan />을 지정
@Controller 사용
<context:component-scan />에 의해 bean으로 자동 등록
LoginController.java |
public class LoginController implements Controller { public ModelAndView handleRequest(HttpServletRequest request, HttpServletResponse response) throws Exception { return null; } |
applicationContext.xml |
<beans ...> <bean class="com.multicampus.view.user.controller.LoginController" /> </beans> |
LoginController.java |
@Controller public class LoginController { public String loginUser(UserVO vo){ return null; } } |
@RequestMapping 사용
요청 URL 경로와 Controller Class 또는 Controlle Class 내의 메서드를 매핑함. 아래의 두 코드는 동일한 의미
LoginController.java |
@Controller public class LoginController { @RequestMapping("/loign.do") public ModelAndView login(HttpServletRequest request, HttpServletResponse response) { } } |
WEB-INF/spring-mvc.xml |
<!-- HandlerMapping --> <bean id="handlerMapping" class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping"> <property name="mappings"> <props> <prop key="/login.do">loginController</prop> </props> </property> </bean> <bean id="loginController" class="com.multicampus.view.user.LoginController"/> |
요청 방식에 따른 @RequestMapping 사용
요청URL은 같아도 method에 따라 다르게 처리할 수 있음
LoginController.java |
package com.multicampus.view.user.controller; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMethod; @Controller public class LoginController { @RequestMapping("/loignView.do", method=RequestMethod.GET) public String loginView(HttpServletRequest request, HttpServletResponse response) { } @RequestMapping("/loign.do", method=RequestMethod.POST) public String login(HttpServletRequest request, HttpServletResponse response) { } } |
컨트롤러 통합하기
너무 많은 컨트롤러 클래스들 -> 하나의 컨트롤러로 통합
@RequestMapping 에서 요청 URL을 매핑
UserController.java |
@Controller("/user.do") public class UserController { @RequestMapping(value="addUser.do") public String addUser(UserVO vo) { System.out.println("=== 회원 등록 ==="); return null; } @RequestMapping(value="getUser.do") public String getUser(UserVO vo) { System.out.println("=== 회원 등록 ==="); return null; } @RequestMapping(value="getUserList.do") public String getUserList(UserVO vo) { System.out.println("=== 회원 등록 ==="); return null; } } |
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- 쿠팡페이코
- 컴퓨터사용자명변경
- 스포츠무료사이트
- 윈도우가상키보드
- 2블럭
- 페이코쿠팡
- 대전갑천2블럭
- 크목한
- payco쿠팡
- 갑천1블럭
- 컴퓨터계정이름변경
- 오블완
- 예능무료사이트
- 노트북화면밝기
- 컴퓨터사용자이름변경
- 스포츠무료로보는사이트
- 뉴스무료로보는사이트
- 뉴스무료사이트
- pc사용자이름변경
- 대전스마트시티
- 원신흥
- 야구무료로보는사이트
- 페이코쿠팡결제
- 드라마무료로보는사이트
- 티스토리챌린지
- 윈도우화상키보드
- 예능무료로보는사이트
- 윈도우화면밝기
- 쿠팡페이코결제
- pc화면밝기
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
글 보관함