Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- SSL
- sm
- PIP모드
- 베른 떠돌이상인
- 홈페이지제작견적
- 유튜브
- IT용어
- 가로세로세팅
- 토토이크 떠돌이상인
- 작은화면
- 특정페이지가로로
- 아르데타인 떠돌이상인
- 한글
- 3
- 슈샤이어 떠돌이상인
- zoom
- 루테란 떠돌이상인
- 욘 떠돌이상인
- 이름바꾸기
- SE
- HWP
- 로헨델 떠돌이상인
- 페이튼 떠돌이상인
- SI
- 파푸니카 떠돌이상인
- 애니츠 떠돌이상인
- https
Archives
- Today
- Total
도담도담
Spring MVC를 이용한 구현 본문
1. XML 문서를 이용한 설정 방법
- Controller가 수시로 변경되어야 하는 경우(주로 솔루션 개발하는 업체에서 사용)
- 설정 방법
- Spring Bean Configuration 설정 파일(~~.xml) 내부에 HandlerMapping / 각 Controller / ViewResolver 클래스에 대한 등록 필요
- <bean id="" class=""></bean> 과 같은 형식으로 등록
- 등록순서:
- 일반적으로 HandlerMapping / 각 Controller / ViewResolver 순으로 등록...
2. annotation을 이용한 설정 방법
- Controller 가 고정되어서 사용되는 경우(특정 기업에 대한 어플리케이션 개발 시)
- 설정 방법
- 각 Controller 클래스 선언부 위에 @Controller를 추가(단, POJO 형식의 클래스)
- Controller 클래스 내부에서 로직을 처리하는 메서드 선언부 위에는
- @RequestMapping(value="요청사항") 을 추가
- 해당 메서드의 매개변수는 각 메서드가 해야하는 일에 따라 VO 객체 타입만 선언할 수도 있고,
- VO와 DAO 타입을 모두 선언할 수도 있다.
위의 @Controller 와 @RequestMapping 는 필수!! 나머지는 다 선택사항
@RequestMapping
- 반환되는 타입은 String 타입..
- 이 때, return 되는 값에 따라 "redirect:" 라는 접두사를 추가할 수도 있다..
- 웹 브라우저가 재요청이 필요한 경우에는 "redirect:" 접두사를 포함하여 리턴.
- 단순히 화면이 필요한 경우에는 해당 결과만...
- 개발자가 직접 객체명을 지정할 경우
@RequestMapping(value="요청사항", method="요청방식")
public String test(UserVO vo){
~~~
}
@RequestMapping(value="요청사항", method="요청방식")
public String test(@ModelAttribute("객체명") UserVO vo){
~~~
}
@ModelAttribute("객체명")와 같이 설정하여 사용 가능!!
- 컨트롤러 내부의 메서드들에 대한 반환 타입을 통일할 경우
1. 모든 메서드의 반환타입을 ModelAndView 로 통일
JSP에서 사용할 데이터가 없이 화면만 응답할 경우
public ModelAndView test(~~~, ModelAndView mav){
mav.setViewName("화면처리");
return mav;
}
JSP에서 사용할 데이터를 포함하여 화면까지 응답할 경우
public ModelAndView test(~~~, ModelAndView mav){
mav.addObject("이름", 전달할 데이터(객체));
mav.setViewName("화면처리");
return mav;
}
2. 모든 메서드의 반환타입을 String 로 통일
JSP에서 사용할 데이터가 없이 화면만 응답할 경우
public String test(~~~){
return "화면처리";
}
JSP에서 사용할 데이터를 포함하여 화면까지 응답할 경우
public String test(~~~, Model model){
model.addAttribute("이름", 전달할 데이터(객체));
return "화면처리";
}
@RequestParam
BoarVO / UserVO 에 선언되지 않은 값이 전달 될 경우 (입력값 등의 경우)
- BoardVO 클래스를 수정. 입력하고자 한값의 name 대로 변수를 추가한 후, 그에따른 getter/setter를 추가하는 방법
- @RequestParam 어노테이션을 사용하는 방법
기본형태
public String getBoardList(BoardVO vo, BoardDAO dao, Model model){
~~~
}
기본 value 값만 추가
public String getBoardList
(@RequestParam(value="입력값의 name") String name,
@RequestParam(value="다른입력값의 name") String name,
BoardVO vo, BoardDAO dao, Model model){
~~~
}
파라비터에 대한 기본값을 설정
public String getBoardList
(@RequestParam(value="입력값의 name", defaultValue="222") String name,
@RequestParam(value="다른입력값의 name", defaultValue="222") String name,
BoardVO vo, BoardDAO dao, Model model){
~~~
}
파라미터에 대한 필수 입력 확인
public String getBoardList
(@RequestParam(value="입력값의 name", defaultValue="222", required="true/false") String name,
@RequestParam(value="다른입력값의 name", defaultValue="222", required="true/false") String name,
BoardVO vo, BoardDAO dao, Model model){
~~~
}
3. XML 과 annotation을 혼용해서 사용 (향후 추가될 여지가 있을 경우)
'IT 공부 > KH 정보교육원' 카테고리의 다른 글
myBatis (0) | 2021.06.29 |
---|---|
프레젠테이션, 비지니스 레이어 통합 (0) | 2021.06.28 |
Spring MVC 사용 (0) | 2021.06.22 |
Spring MVC 구조 (0) | 2021.06.22 |
스프링 트랙젝션(Transaction) (0) | 2021.06.21 |
Comments