行是知之始,知是行之成。这篇文章主要讲述Spring中的 BeanWrapper相关的知识,希望能为你提供帮助。
BeanWrapper 是Spring提供的一个用来操作javaBean属性的工具,使用它可以直接修改一个对象的属性。
对于bean属性的操作,大家熟知的主要有下面这些工具类:1.Apache的BeanUtils和PropertyUtils
2.cglib的BeanMap和BeanCopier
3.spring的BeanUtils
BeanWrapper 的好处在于:
1.支持设置嵌套属性
2.支持属性值的类型转换(设置ConversionService)
下面是一个使用BeanWrapper 包装对象的例子:
package com.glmapper.web.test; import org.springframework.beans.BeanWrapper; import org.springframework.beans.PropertyAccessorFactory; import org.springframework.beans.PropertyValue; public class BeanWrapperTest { public static void main(String[] args) { User user=new User(); //通过PropertyAccessorFactory将user对象封装成BeanWrapper BeanWrapper bw=PropertyAccessorFactory.forBeanPropertyAccess(user); //方式一:直接对属性值进行设置 bw.setPropertyValue("userName", "张三"); //方式二:通过PropertyValue进行设置 PropertyValue pv=new PropertyValue("userName","李四"); bw.setPropertyValue(pv); System.out.println(user.getUserName()); } } //一个User类 class User{ private String userName; public String getUserName() { return userName; } public void setUserName(String userName) { this.userName = userName; } }
【Spring中的 BeanWrapper】在Spring中,HttpServletBean的属性设置就是通过这种方式来完成的。
推荐阅读
- mybatis异常信息之java.lang.IllegalArgumentException: Mapped Statements collection does not contain value
- JavaAppArgumentsAdd
- Android 事件分发机制 图解
- 用ESP8266+android,制作自己的WIFI小车(Android 软件)
- 最接近原生APP体验的高性能前端框架——MUI
- Android传递中文参数方法(之一)
- 实现异常处理-找不到404资源
- 使用Spring Security实现基本身份验证
- JAX-WS教程介绍