-
스프링 - 컨트롤러를 이용해 view jsp 페이지를 여는 방법기타/Spring MVC 2021. 2. 3. 17:27
일단 컨트롤러를 사용하려면 servlet-context.xml 안에 해당 컨트롤러가 들어있는 패키지 경로를
표시해주어야한다.
그렇지 않으면 경로를 찾을 수 없어서 에러가 발생
<context:component-scan base-package="패키지경로" />
아무런 class를 하나 만들어준다
그리고 컨트롤러 표시를 달아주기
package com.swj.spring_ex; @Controller public class MyController { }
그 다음 만든 페이지를 @RequestMapping 이용해 맵핑시켜준다.
@Controller public class MyController { @RequestMapping("/content/contentView") public String contentView(Model model) { //모델 객체 //데이터 설정만 가능하다 // model.addAttribute(변수이름, 변수에 넣을 데이터값) model.addAttribute("id", "아이디입니다"); return "/content/contentView"; } }
여기서 return 값과 맵핑값은 루트 뒤 경로를 써준다
root/리턴값 이렇게 들어간다.
package com.swj.spring_ex; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; @Controller @RequestMapping("/board") public class SampleRequest { @RequestMapping("/view") public String view() { return "/board/view"; } }
맵핑은 클래스에도 적용 가능하다.
마찬가지로 return에는 /board를 써줘야 알맞게 찾아간다.
객체를 만드는 법은 Model, ModelAndVeiw가 있는데 사용법은 비슷하다.
이게 나중에 수정이 저 편할 것 같기도
@Controller public class MyController { @RequestMapping("/model/modelView") public ModelAndView modelView(Model model) { //데이터와 뷰를 동시에 설정가능 ModelAndView mv = new ModelAndView(); mv.addObject("id", "123465"); //뷰의 이름으로 보낼 데이터 값 mv.setViewName("/model/modelView"); //뷰의 이름 return mv; } }
'기타 > Spring MVC' 카테고리의 다른 글
Spring MVC 개인프로젝트 - #2 이클립스 프로젝트와 깃허브 연동 (0) 2021.03.18 Spring MVC 개인프로젝트 - #1 프로로젝트 생성과 마이바티스+오라클 연동 (0) 2021.03.18 스프링 namespace 목록 (2) 2021.01.26