Spring接收前台表单数据的三种方法

原文链接:https://blog.csdn.net/NNnora/article/details/80612491

一、 提交方式
表单可以通过get/post接口提交,在RequestMapping中不指定method那么get/post都可以访问到,指定method=RequestMethod.POST则只能通过post方式访问。
二、Controller层获取表单数据的三种方式
1. 在方法签名中添加HttpServletRequest参数,方法中通过HttpServletRequest.getParameter(“x”)方法得到对应的参数
2. 方法签名中使用@RequestParam注解获取表单字段对应的参数,有多少个字段就添加多少个对应的入参。

3. 添加自定义Java类型的对象参数,用来接收表单数据
    使用该方式初次看起来写的代码要多,但是对象方式使得维护性高。
@RequestMapping(value="/user/save", method=RequestMethod.POST)
public ModelAndView saveUser(User user) {
StringBuilder sb = new StringBuilder();
sb.append("用户名:"+user.getUsername());
sb.append("邮箱:"+user.getEmail());
sb.append("年龄:"+user.getAge());
String content = sb.toString();
return new ModelAndView("/wecome","result",content);
}
上面代码中,自定义的User对象用来接收表单数据,user中有getUserName,getPassword等方法,获取字段的值。

User类:
public class User {
private String username;
private String password;
public User() { //必须要有无參构造函数,否则报错
}
public User(String username, String password) {
this.username = username;
this.password = password;
}
//getter setter method...
}



原文地址:https://www.cnblogs.com/birdterror/p/13282513.html