一、springMvc获取参数的三种方法
/**
* 使用HttpServletRequest获取
*/
@RequestMapping("/login1")
public String login1(HttpServletRequest request,Model model){
model.addAttribute("name", request.getParameter("name"));
model.addAttribute("password", request.getParameter("password"));
return "success";
}
/**
* spring自动将表单参数注入到方法参数,参数值和页面name属性一致时可以省去@RequestParam注解
*/
@RequestMapping("/login2")
public String login2(@RequestParam("name") String name, String password,Model model){
model.addAttribute("name", name);
model.addAttribute("password", password);
return "success";
}
/**
* 自动注入bean属性
*/
@RequestMapping("/login3")
public String login3(User user,Model model){
model.addAttribute("name", user.getName());
model.addAttribute("password", user.getPassword());
return "success";
}
二、springMvc向前台传值的两种方法
@RequestMapping("/login2") public String login2(@RequestParam("name") String name, String password,Model model){ model.addAttribute("name", name); model.addAttribute("password", password); return "success"; } return "success"; } @RequestMapping("/login4") public String login4(User user, Map<String, Object> map){ map.put("name", user.getName()); map.put("password", user.getPassword()); return "success"; }
三、参数中文乱码的两种处理方式
例如传递过来的name属性是中文
@RequestMapping("/login2")
public String login2(@RequestParam("name") String name, String password,Model model){
model.addAttribute("name", name);
model.addAttribute("password", password);
return "success";
}
1、
修改tomcat默认编码(ISO-8859-1)方法,修改tomcat根目录的conf下的server.xml,Connector元素添加URIEncoding=”UTF-8”属性,如下所示:
<Connector connectionTimeout="20000" port="8080" protocol="HTTP/1.1" URIEncoding="UTF-8" redirectPort="8443"/>
2、new String(info.getBytes("iso-8859-1"),"UTF-8");