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

     
  • 相关阅读:
    Bootstrap3.0学习第八轮
    内存管理相关的信息
    SVN merge
    Asp.Net MVC 3
    formValidator
    jquery 分页控件2
    从零开始学C++之STL(四):算法简介、7种算法分类
    (Java实现) 过河卒
    (Java实现) N皇后问题
    (Java实现) N皇后问题
  • 原文地址:https://www.cnblogs.com/myadmin/p/7634702.html
Copyright © 2011-2022 走看看