spring mvc怎么设置从前台页面输入的用户名密码编码
1个回答
展开全部
@RequestMapping(value = "/login", method = RequestMethod.GET)
public ModelAndView myMethod(HttpServletRequest request,
HttpServletResponse response,
//@RequestParam("username")String username, @RequestParam("password")String password
String username,String password,//如果和前台的一样一样简写成这样
ModelMap modelMap) throws Exception {
username = new String(username.getBytes("iso8859-1"),"UTF-8");//编码问题 (服务器一帮都是iso的)
System.out.println(username+":"+password);
modelMap.put("loginUser", username);
modelMap.put("msg", "I'm in session");
return new ModelAndView("/view/hello", modelMap);
}
这里是一个方法,springMVC中参数可以直接现在方法的参数列表中,如果是对象属性的话也可以直接使用对象例如(User user,...)
刚才的方法对应的前台:
<form action="login">
username:
<input name="username" />
<br>
password:
<input name="password" type="password" />
<br>
<input type="submit" value="登入" />
</form>
追问
我的form表单中有10多个字段 而且和数据库都是一一对应的,而且以后说不定还会增加,不想一个字段一个字段的传,想直接将整个form表单的所有字段全传过去 该怎么写啊
回答
这些数据都是一个类里面的吧。就只要吧原来的string username,string password ...
改成哪个类就行了,会自动封装进去的例如:方法的参数User user,HttpRequest requrst,..
使用的时候只要user.getUsername();
类似下面的:
@RequestMapping("/addUser")
public String addUser(User user,HttpServletRequest request){
userManager.addUser(user);
return "redirect:/user/getAllUser";
}
public ModelAndView myMethod(HttpServletRequest request,
HttpServletResponse response,
//@RequestParam("username")String username, @RequestParam("password")String password
String username,String password,//如果和前台的一样一样简写成这样
ModelMap modelMap) throws Exception {
username = new String(username.getBytes("iso8859-1"),"UTF-8");//编码问题 (服务器一帮都是iso的)
System.out.println(username+":"+password);
modelMap.put("loginUser", username);
modelMap.put("msg", "I'm in session");
return new ModelAndView("/view/hello", modelMap);
}
这里是一个方法,springMVC中参数可以直接现在方法的参数列表中,如果是对象属性的话也可以直接使用对象例如(User user,...)
刚才的方法对应的前台:
<form action="login">
username:
<input name="username" />
<br>
password:
<input name="password" type="password" />
<br>
<input type="submit" value="登入" />
</form>
追问
我的form表单中有10多个字段 而且和数据库都是一一对应的,而且以后说不定还会增加,不想一个字段一个字段的传,想直接将整个form表单的所有字段全传过去 该怎么写啊
回答
这些数据都是一个类里面的吧。就只要吧原来的string username,string password ...
改成哪个类就行了,会自动封装进去的例如:方法的参数User user,HttpRequest requrst,..
使用的时候只要user.getUsername();
类似下面的:
@RequestMapping("/addUser")
public String addUser(User user,HttpServletRequest request){
userManager.addUser(user);
return "redirect:/user/getAllUser";
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询