SpringMVC-要求パラメータとページ参照の受信
SpringMVC-要求パラメータとページ参照の受信
1.HttpServiceletRequestを使用して取得
2.Springは、Struts 2と同様にフォームパラメータをメソッドパラメータに自動的に注入し、フォームのname属性と一致します.
3.自動注入Bean属性
4.Controllerコンポーネントが処理された後、jspページに値を送る:
1)HttpServeretRequestとSessionを使用してsetAttribute()を設定すると、Serveretと同じになります.
2)ModelAndViewオブジェクトを使用します.
3)ModelMapオブジェクトを使用します.
4)@ModelAttribute注記を使用する.
ModelデータはHttpServeretRequestのAttributeを利用してtest.jspに伝達する.
ModelMapパラメータオブジェクトの使用例:
ModelMapデータはHttpServertRequestのAttributeを利用してtest.jspに伝達する.
@ModelAttributeの例を使用します.
Controllerメソッドのパラメータ部分またはBean属性メソッドで使用する.
@ModelAttributeデータは、HttpServiceRequestのAttributeを利用してtest.jspに伝達する.
Sessionストレージ:
HttpServiceReequestのgetSession()メソッドを利用することができる.
5.Spring MVCのデフォルトでは、転送を使用してビューを配置します.リダイレクトを使用する場合は、次のように操作できます.
1)RedirectViewを使用する.
2)redirect:接頭辞を使用する.
あるいは、次の方法で、仕事でよく使われる方法です.
1.HttpServiceletRequestを使用して取得
@RequestMapping("/test.do")
public String test(HttpServletRequest request){
String name = request.getParameter("name")
String pass = request.getParameter("pass")
}
2.Springは、Struts 2と同様にフォームパラメータをメソッドパラメータに自動的に注入し、フォームのname属性と一致します.
@RequestMapping("/test.do")
public String test(HttpServletRequest request, String name,
@RequestParam("pass")String password) // pass, password
{
System.out.println(name);
System.out.println(password)
}
3.自動注入Bean属性
<form action="test.do">
:<input name="name"/>
:<input name="pass"/>
<input type="submit" value=" ">
</form>
// User
public class User{
private String name;
private String pass;
}
@RequestMapping("/test.do")
public String test(User user)
{
System.out.println(name);
System.out.println(password)
}
4.Controllerコンポーネントが処理された後、jspページに値を送る:
1)HttpServeretRequestとSessionを使用してsetAttribute()を設定すると、Serveretと同じになります.
2)ModelAndViewオブジェクトを使用します.
3)ModelMapオブジェクトを使用します.
4)@ModelAttribute注記を使用する.
ModelデータはHttpServeretRequestのAttributeを利用してtest.jspに伝達する.
@RequestMapping("/test.do")
public ModelAndView test(String name,String pass){
User user = userService.test(name,pwd);
Map<String,Object> data = new HashMap<String,Object>();
data.put("user",user);
return new ModelAndView("success",data);
}
ModelMapパラメータオブジェクトの使用例:
ModelMapデータはHttpServertRequestのAttributeを利用してtest.jspに伝達する.
@RequestMapping("/test.do")
public String test(String name,String pass ,ModelMap model){
User user = userService.test(name,pwd);
model.addAttribute("user",user);
model.put("name",name);
return "success";
}
@ModelAttributeの例を使用します.
Controllerメソッドのパラメータ部分またはBean属性メソッドで使用する.
@ModelAttributeデータは、HttpServiceRequestのAttributeを利用してtest.jspに伝達する.
@RequestMapping("/test.do")
public String test(@ModelAttribute("user") User user){
//TODO
return "success";
}
@ModelAttribute("name")
public String getName(){
return name;
}
Sessionストレージ:
HttpServiceReequestのgetSession()メソッドを利用することができる.
@RequestMapping("/test.do")
public String test(String name,String pwd
ModelMap model,HttpServletRequest request){
User user = serService.test(name,pwd);
HttpSession session = request.getSession();
session.setAttribute("user",user);
model.addAttribute("user",user);
return "success";
}
5.Spring MVCのデフォルトでは、転送を使用してビューを配置します.リダイレクトを使用する場合は、次のように操作できます.
1)RedirectViewを使用する.
2)redirect:接頭辞を使用する.
public ModelAndView test(){
RedirectView view = new RedirectView("regirstTest.do");
return new ModelAndView(view);
} <strong> </strong>
あるいは、次の方法で、仕事でよく使われる方法です.
public String test(){
//TODO
return "redirect:regirstTest.do";
}