SpringMVC – 수신 요청 매개 변수 및 페이지 참조

spring 수신 요청 매개 변수:
1, HttpServletRequest 사용

@RequestMapping("/login.do") 
public String login(HttpServletRequest request){ 
  String name = request.getParameter("name") 
  String pass = request.getParameter("pass") 
} 
2, Spring은 자동으로 폼 파라미터를 방법 파라미터에 주입하고 폼의name 속성과 일치합니다.Struts2와 같습니다.

@RequestMapping("/login.do") 
public String login(HttpServletRequest request, 
                String name, 
 @RequestParam("pass")String password) //  pass, password  
{ 
  syso(name); 
  syso(password) 
} 
3, 자동으로 Bean 속성 주입

<form action="login.do"> 
 :<input name="name"/> 
 :<input name="pass"/> 
<input type="submit" value=" "> 
</form> 
 
// User  
public class User{ 
 private String name; 
 private String pass; 
} 

 @RequestMapping("/login.do") 
public String login(User user) 
{ 
  syso(user.getName()); 
  syso(user.getPass()); 
} 
페이지에 값을 전달하려면:
Controller 구성 요소가 처리되면 jsp 페이지에 값을 전달합니다.
1, HttpServletRequest와 Session을 사용하고 setAttribute()를 사용하면 Servlet과 같습니다
2, ModelandView 객체 사용
3, ModelMap 객체 사용
4, @ModelAttribute 메모 사용
모델 데이터는 HttpServletRequest의 Attribute를 사용하여 success로 전달됩니다.jsp 중

@RequestMapping("/login.do") 
public ModelAndView login(String name,String pass){ 
  User user = userService.login(name,pwd); 
  Map<String,Object> data = new HashMap<String,Object>(); 
  data.put("user",user); 
  return new ModelAndView("success",data); 
} 
ModelMap 매개변수 객체 사용 예:
ModelMap 데이터는 HttpServletRequest의 Attribute를 사용하여 success로 전달됩니다.jsp 중

@RequestMapping("/login.do") 
public String login(String name,String pass ,ModelMap model){ 
  User user = userService.login(name,pwd); 
  model.addAttribute("user",user); 
  model.put("name",name); 
  return "success"; 
} 
@ModelAttribute 사용 예
Controller 방법의 매개 변수 부분이나 Bean 속성 방법에서 사용하기
@ModelAttribute 데이터는 HttpServletRequest의 Attribute를 사용하여 success로 전달됩니다.jsp 중

@RequestMapping("/login.do") 
public String login(@ModelAttribute("user") User user){ 
  //TODO 
  return "success"; 
} 
 
@ModelAttribute("name") 
public String getName(){ 
  return name; 
} 
Session 스토리지:
HttpServletReequest의 getSession() 방법을 사용할 수 있습니다.

@RequestMapping("/login.do") 
public String login(String name,String pwd 
              ModelMap model,HttpServletRequest request){ 
   User user = serService.login(name,pwd); 
   HttpSession session = request.getSession(); 
   session.setAttribute("user",user); 
   model.addAttribute("user",user); 
   return "success"; 
} 
Spring MVC는 기본적으로 뷰를 배치하기 위해 전달을 사용합니다. 리디렉션을 사용하려면 다음과 같이 하십시오.
1, RedirectView 사용
2,redirect: 접두사 사용하기

public ModelAndView login(){ 
  RedirectView view = new RedirectView("regirst.do"); 
  return new ModelAndView(view); 
} 
또는 다음과 같은 방법으로 작업에서 자주 사용하는 방법:

public String login(){ 
  //TODO 
  return "redirect:regirst.do"; 
} 
이상은 본문의 전체 내용입니다. 여러분의 학습에 도움이 되고 저희를 많이 응원해 주십시오.

좋은 웹페이지 즐겨찾기