SpringMVC---使用POJO绑定请求参数值

一:使用POJO绑定请求参数值

  1. SpringMVC会按照请求参数名跟POJO属性名进行自动匹配,自动为该对象填充属性值,支持级联属性(Address.street等)

二:代码实现

1.创建实体类User和Address.

package com.dhx.pojo;

public class Address {
	private String city;
	private String street;

	public String getCity() {
		return city;
	}

	public void setCity(String city) {
		this.city = city;
	}

	public String getStreet() {
		return street;
	}

	public void setStreet(String street) {
		this.street = street;
	}

	@Override
	public String toString() {
		return "Address [city=" + city + ", street=" + street + "]";
	}

}
package com.dhx.pojo;

public class User {
	private String name;
	private String password;
	private int age;
	private String email;
	private Address address;

	public String getName() {
		return name;
	}

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

	public String getPassword() {
		return password;
	}

	public void setPassword(String password) {
		this.password = password;
	}

	public int getAge() {
		return age;
	}

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

	public String getEmail() {
		return email;
	}

	public void setEmail(String email) {
		this.email = email;
	}

	public Address getAddress() {
		return address;
	}

	public void setAddress(Address address) {
		this.address = address;
	}

	@Override
	public String toString() {
		return "User [name=" + name + ", password=" + password + ", age=" + age + ", email=" + email + ", address="
				+ address + "]";
	}

}

2.测试方法

private final String SUCCESS="success";
	/*
	 * SpringMVC会按照请求参数名跟POJO属性名进行自动匹配
	 * 自动为该对象填充属性值
	 * 支持级联属性(Address.street等)
	 */
	@RequestMapping("testPojo")
	public String testPojo(User user) {
		System.out.println("testPojo"+user);
		return SUCCESS;
	}

3.测试页面

<form action="spring/testPojo" method="post">
		name:<input type="text" name="name">
		<br>
		age:<input type="text" name="age">
		<br>
		password:<input type="password" name="password">
		<br>
		email:<input type="text" name="email">
		<br>
		city:<input type="text" name="Address.city">
		<br>
		street:<input type="text" name="Address.street">
		<br>
		<input type="submit" value="submit">
	</form>
发布了64 篇原创文章 · 获赞 12 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/qq_39093474/article/details/103701438
今日推荐