zoukankan      html  css  js  c++  java
  • 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中,HttpServletBean的属性设置就是通过这种方式来完成的。

     
  • 相关阅读:
    bzoj4974: [Lydsy1708月赛]字符串大师
    bzoj1801: [Ahoi2009]chess 中国象棋
    predis的使用
    常用的文件数据类型mime
    使用CURL模拟表单上传文件
    模型类:连接数据库
    extends注意事项
    extends前提
    include
    radio后的input框数据传递
  • 原文地址:https://www.cnblogs.com/myadmin/p/7634702.html
Copyright © 2011-2022 走看看