springmvc中请求参数的绑定

简介: springmvc中请求参数的绑定

支持的数据类型:


基本类型参数:

    包括基本类型和 String 类型

POJO 类型参数:

   包括实体类,以及关联的实体类

数组和集合类型参数:

    包括 List 结构和 Map 结构的集合(包括数组)


POJO 类型作为参数


实体类代码:
/**
* 账户信息
* @author 黑马程序员
* @Company http://www.ithiema.com
* @Version 1.0
*/
public class Account implements Serializable {
  private Integer id;
  private String name;
  private Float money;
  private Address address;
  //getters and setters
  }
/**
* 地址的实体类
* @author 黑马程序员
* @Company http://www.ithiema.com
* @Version 1.0
*/
public class Address implements Serializable {
  private String provinceName;
  private String cityName;
  //getters and setters
}

jsp 代码

<!-- pojo 类型演示 -->
<form action="account/saveAccount" method="post">
  账户名称: <input type="text" name="name" ><br/>
  账户金额: <input type="text" name="money" ><br/>
  账户省份: <input type="text" name="address.provinceName" ><br/>
  账户城市: <input type="text" name="address.cityName" ><br/>
  <input type="submit" value="保存">
</form>

控制器代码:

/**
* 保存账户
* @param account
* @return
*/
@RequestMapping("/saveAccount")
public String saveAccount(Account account) {
  System.out.println("保存了账户。。。。 "+account);
  return "success";
}

POJO 类中包含集合类型参数

实体类代码:

/**
* 用户实体类
* @author 黑马程序员
* @Company http://www.ithiema.com
* @Version 1.0
*/
public class User implements Serializable {
  private String username;
  private String password;
  private Integer age;
  private List<Account> accounts;
  private Map<String,Account> accountMap;
  //getters and setters
  @Override
  public String toString() {
  return "User [username=" + username + ", password=" + password + ", age="
  + age + ",\n accounts=" + accounts
  + ",\n accountMap=" + accountMap + "]";
  + }
  }

jsp 代码:

<!-- POJO 类包含集合类型演示 -->
<form action="account/updateAccount" method="post">
  用户名称: <input type="text" name="username" ><br/>
  用户密码: <input type="password" name="password" ><br/>
  用户年龄: <input type="text" name="age" ><br/>
  账户 1 名称: <input type="text" name="accounts[0].name" ><br/>
  账户 1 金额: <input type="text" name="accounts[0].money" ><br/>
  账户 2 名称: <input type="text" name="accounts[1].name" ><br/>
  账户 2 金额: <input type="text" name="accounts[1].money" ><br/>
  账户 3 名称: <input type="text" name="accountMap['one'].name" ><br/>
  账户 3 金额: <input type="text" name="accountMap['one'].money" ><br/>
  账户 4 名称: <input type="text" name="accountMap['two'].name" ><br/>
  账户 4 金额: <input type="text" name="accountMap['two'].money" ><br/>
  <input type="submit" value="保存">
</form>

控制器代码:

/**
* 更新账户
* @return
*/
@RequestMapping("/updateAccount")
public String updateAccount(User user) {
  System.out.println("更新了账户。。。。 "+user);
  return "success";
}
相关文章
|
前端开发 Java 数据库
49SpringMVC - 参数绑定(高级参数绑定)
49SpringMVC - 参数绑定(高级参数绑定)
59 0
|
前端开发 Java
48SpringMVC - 参数绑定(自定义)
48SpringMVC - 参数绑定(自定义)
50 0
47SpringMVC - 参数绑定(绑定包装pojo)
47SpringMVC - 参数绑定(绑定包装pojo)
35 0
|
应用服务中间件 数据库
46SpringMVC - 参数绑定(绑定pojo类型)
46SpringMVC - 参数绑定(绑定pojo类型)
75 0
45SpringMVC - 参数绑定(绑定简单类型)
45SpringMVC - 参数绑定(绑定简单类型)
59 0
|
6月前
|
JSON 前端开发 JavaScript
JAVAEE框架技术之5-springMVC参数绑定和异步交互
JAVAEE框架技术之5-springMVC参数绑定和异步交互
73 0
JAVAEE框架技术之5-springMVC参数绑定和异步交互
|
6月前
|
JSON 前端开发 Java
开发必备技能:探索Spring MVC请求映射和参数绑定的奇妙之旅!
开发必备技能:探索Spring MVC请求映射和参数绑定的奇妙之旅!
|
Java 容器
SpringMVC中参数是如何绑定and返回结果是如何解析的?
SpringMVC中参数是如何绑定and返回结果是如何解析的?
79 0
43SpringMVC - 参数绑定(默认支持的参数类型)
43SpringMVC - 参数绑定(默认支持的参数类型)
52 0
|
6月前
|
设计模式 前端开发 JavaScript
Spring MVC(一)【什么是Spring MVC】
Spring MVC(一)【什么是Spring MVC】