Spring MVC接受表单 Spring MVC接受表单自动封装特性实例解析

软件发布|下载排行|最新软件

当前位置:首页IT学院IT技术

Spring MVC接受表单 Spring MVC接受表单自动封装特性实例解析

Esrevinud的笔记   2021-04-02 我要评论

这篇文章主要介绍了Spring MVC接受表单自动封装特性实例解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

Spring MVC中的Controller可以以实体类接受来自客户端的form表单,表单的字段自动构成实体类对象

客户端的表单

<form action="http://localhost:8080/test/user" method="POST">
    <!-- 每个字段名对应实体类 -->    
    <div>
      <input type="text" name="name"/>
    </div>

    <div>
      <input type="number" name="age"/>
    </div>

    <div>
      <input type="text" name="hobby"/>
    </div>

    <input type="submit" value="Submit"/>
</form>

实体类

public class User {
  private String name;
  private Integer age;
  private String hobby;

  public User() {
    this.name = "未初始化";
    this.age = 10;
    this.hobby = "coding";
  }

  public User(String name) {
    this.name = name;
    this.age = 10;
    this.hobby = "coding";
  }

  public User(String name, Integer age) {
    this.name = name;
    this.age = age;
    this.hobby = "coding";
  }

  public User(String name, Integer age, String hobby) {
    this.name = name;
    this.age = age;
    this.hobby = hobby;
  }

  public Integer getAge() {
    return age;
  }

  public String getHobby() {
    return hobby;
  }

  public String getName() {
    return name;
  }

  public void setAge(Integer age) {
    this.age = age;
  }

  public void setHobby(String hobby) {
    this.hobby = hobby;
  }

  public void setName(String name) {
    this.name = name;
  }

  @Override
  public String toString() {
    return "User{" +
        "name='" + name + '\'' +
        ", age=" + age +
        ", hobby='" + hobby + '\'' +
        '}';
  }
}

服务端接收

@Controller
@RequestMapping("/test")
public class TestController {

  @RequestMapping(value = "/user", method = RequestMethod.POST)
  // 控制器会自动实例化参数 
  public String user(User user) {
    System.out.println(user);
    return "redirect:/test/user";
  }

  @RequestMapping(value = "/user", method = RequestMethod.GET)
  public String user() {
    return "form";
  }
}
您可能感兴趣的文章:

Copyright 2022 版权所有 软件发布 访问手机版

声明:所有软件和文章来自软件开发商或者作者 如有异议 请与本站联系 联系我们