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的属性设置就是通过这种方式来完成的。

     
  • 相关阅读:
    前端面试题精选
    闭包、作用域、THIS、OOP
    Ubuntu,debian一键安装Mariadb
    两条命令实现nodejs快速安装
    HTML 5的革新——语义化标签section和article的区别
    uni-app之uni.showToast()image路径问题
    vue-cli4配置文件别名
    蓝湖使用方法
    Node组件——Express简介
    程序员最深情的告白——《致对象》
  • 原文地址:https://www.cnblogs.com/myadmin/p/7634702.html
Copyright © 2011-2022 走看看