表单值如何在 controller中获取

JSP 页面中的多个字段与数据库中全都一一对应,如何获取值并保存到数据库中,最好给点代码 真心求助!!!框架是SpringMVC

@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";
}

温馨提示:内容为网友见解,仅供参考
第1个回答  2013-12-11
String userid = req.getParameter("userid");
String name=req.getParameter("name");
String userpass = req.getParameter("password");

这是一个用户注册的控制器的一部分,按你说的,我用的是request.getgetParameter(“这里是表单中对应的名字”),再通过控制器通过set方法传到javabean中,进行数据库业务时,用javabean的get方法从中取出以设置的值,insert插入相应表格,不懂可以继续问本回答被网友采纳
相似回答