`

Spring4MVC之使用 POJO 对象绑定请求参数值

 
阅读更多

 

使用 POJO 对象绑定请求参数值

 

Spring MVC 会按请求参数名和 POJO 属性名进行自动匹配,自动为该对象填充属性值。支持级联属性。

如:dept.deptId、dept.address.tel 等

 

示例

 

1. JSP页面

 

<li>使用 POJO 对象绑定请求参数值
            <form action="user/testPOJOMapping" method="POST">
                <table>
                    <tr>
                        <td>用户名:</td><td><input type="text" name="username"  value=""/></td>
                    </tr>
                    <tr>
                        <td>密码:</td><td><input type="password" name="password"  value=""/></td>
                    </tr>
                    <tr>
                        <td>电子邮件:</td><td><input type="text" name="email"  value=""/></td>
                    </tr>
                    <tr>
                        <td>联系电话:</td><td><input type="text" name="phonenumber"  value=""/></td>
                    </tr>
                    <tr>
                        <td>省份:</td><td><input type="text" name="address.province"  value=""/></td>
                    </tr>
                    <tr>
                        <td>城市:</td><td><input type="text" name="address.city"  value=""/></td>
                    </tr>
                    <tr align="right">
                        <td colspan="2"><input type="submit"/></td>
                    </tr>
                </table>
            </form>
        </li>

 

2. 添加模型类

 

package org.rabbitx.web.spring4mvc.requestmapping.model;

public class Address {

	private String province;
	
	private String city;

	public String getProvince() {
		return province;
	}

	public void setProvince(String province) {
		this.province = province;
	}

	public String getCity() {
		return city;
	}

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

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

 

package org.rabbitx.web.spring4mvc.requestmapping.model;

public class User {

	private String username;
	
	private String password;
	
	private String email;
	
	private String phonenumber;
	
	private Address address;

	public String getUsername() {
		return username;
	}

	public void setUsername(String username) {
		this.username = username;
	}

	public String getPassword() {
		return password;
	}

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

	public String getEmail() {
		return email;
	}

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

	public String getPhonenumber() {
		return phonenumber;
	}

	public void setPhonenumber(String phonenumber) {
		this.phonenumber = phonenumber;
	}

	public Address getAddress() {
		return address;
	}

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

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

 

3. 添加处理类

 

	/**
	 * 使用 POJO 对象绑定请求参数值
	 * 
	 * Spring MVC 会按请求参数名和 POJO 属性名进行自动匹配,自动为该对象填充属性值。支持级联属性。
	 * 如address.province,address.city等
	 * 
	 * 遗留问题:
	 * 1. 表单内容为中文时,乱码
	 */
	@RequestMapping("testPOJOMapping")
	public String testPOJOMapping(User user)
	{
		System.out.println("------testPOJOMapping - user :" + user +" ------");
		return LOGIN;
	}

 

 

 

分享到:
评论

相关推荐

    第12章Spring MVC参数绑定的验证

    第12章Spring MVC参数绑定的验证 简单数据类型绑定 默认数据类型绑定 POJO类型 复杂数据类型绑定(数组、集合)

    Spring MVC 员工管理系统

    Spring提供了丰富的处理器类型,在真正处理业务逻辑前,有些处理器会事先执行两项预处理工作: 1)将HttpServletRequest请求参数绑定到一个POJO对象中; 2)对绑定了请求参数的POJO对象进行数据合法性校验; ④ ...

    springmvc demo

    即使用了MVC架构模式的思想,将web层进行职责解耦,基于请求驱动指的就是使用请求-响应模型,框架的目的就是帮助我们简化开发,Spring Web MVC也是要简化我们日常Web开发的。 Spring Web MVC也是服务到工作者模式的...

    Spring MVC注解与数据绑定(含源码及结果图)

    1、有如下一个订单信息页面order.jsp(置于/WEB-INF/jsp目录下),按以下步骤实现一个使用POJO类型完成表单数据传输的SpringMVC数据绑定项目。 (1) 创建一个Order类来封装上述订单信息,其中各个属性的名称和数据类型...

    Spring中文帮助文档

    使用@RequestParam绑定请求参数到方法参数 13.12.5. 使用@ModelAttribute提供一个从模型到数据的链接 13.12.6. 使用@SessionAttributes指定存储在会话中的属性 13.12.7. 自定义WebDataBinder初始化 13.13. 更多...

    Spring API

    使用@RequestParam绑定请求参数到方法参数 13.12.5. 使用@ModelAttribute提供一个从模型到数据的链接 13.12.6. 使用@SessionAttributes指定存储在会话中的属性 13.12.7. 自定义WebDataBinder初始化 13.13. 更多...

    Spring in Action(第二版 中文高清版).part2

    13.1 开始Spring MVC之旅 13.1.1 请求生命中的一天 13.1.2 配置DispatcherServlet 13.1.3 Spring MVC概述 13.2 将请求映射到控制器 13.2.1 使用SimpleUrlHandler Mapping 13.2.2 使用ControllerClassName ...

    Spring in Action(第二版 中文高清版).part1

    13.1 开始Spring MVC之旅 13.1.1 请求生命中的一天 13.1.2 配置DispatcherServlet 13.1.3 Spring MVC概述 13.2 将请求映射到控制器 13.2.1 使用SimpleUrlHandler Mapping 13.2.2 使用ControllerClassName ...

    Spring面试题

    Web 模块还简化了处理多部分请求以及将请求参数绑定到域对象的工作。 ☆ Spring MVC 框架:MVC 框架是一个全功能的构建 Web 应用程序的 MVC 实现。通过策略接口,MVC 框架变成为高度可配置的,MVC 容纳了大量视图...

    跟我学SpringMVC

    即使用了MVC架 构模式的思想,将web层进行职责解耦,基于请求驱动指的就是使用请求-响应模型,框架的目的就是帮助我们简化开 发,Spring Web MVC也是要简化我们日常Web开发的。 另外还有一种基于组件的、事件驱动的...

    SPRING入门

    Spring MVC属于springFrameWork(spring)的产品,它是基于java的轻量级web框架,使用MVC架构模式,将web层进行解耦功能,前端控制器是DispatcherServlet;应用控制器其实拆为处理器映射器(Handler Mapping)进行处理器...

    Java实验一.docx

    4、掌握Spring MVC的常用数据绑定类型的使用 二、实验内容 1、有如下一个订单信息页面order.jsp(置于/WEB-INF/jsp目录下),按以下步骤实现一个使用POJO类型完成表单数据传输的SpringMVC数据绑定项目。

    mojave:一个基于注释的基于POJO的Java Web MVC框架,支持Guice的DI

    Mojave MVC Web框架======================== Mojave(发音为Mo-hav-ee)是一个注释驱动的基于POJO的Java Web应用程序开发框架。 它借鉴了Spring Web MVC和EJB 3.1的思想,并合并了Guice。 它试图: 通过提供IoC功能...

    基于SSM框架+Mysql的企业CRM客户关系管理系统项目源码+数据库+项目说明.zip

    使用@RequestBody接收Axios传来的Json对象时,可以用一个Map对象接收,也可以用一个POJO类对象接收 2. 使用@RequestBody接收Axios传来的Json对象时,必须设置请求报文中的Content-Type属性为application/json,...

    Grails权威指南

    第1章 寻找grails之旅  1.1 java的困惑  1.2 webc2.0时代  1.3 java的力量  1.4 什么是grails  1.4.1 与java集成  1.4.2 简单而强大  1.4.3 吸取的经验教训  1.5 使用grails的原因 ...

    整理后java开发全套达内学习笔记(含练习)

    abstract (关键字) 抽象 ['æbstrækt] access vt.访问,存取 ['ækses]'(n.入口,使用权) algorithm n....Annotation [java] 代码注释 [ænәu'... \uxxxx 1到4位16进制数指定Unicode字符输出(xxxx) \\ \ \' ' \" ...

Global site tag (gtag.js) - Google Analytics