Spring的jar包用来做动态properties的getter/setter赋值方法:
1:需要的jar包:
spring-beans-3.2.0.RC2.jar
commons-logging-1.2.jar
spring-core-3.2.0.RC2.jar
2:测试:
Java bean:
package com.bean; public class Company { private long id; private String name; public long getId() { return id; } public void setId(long id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } }
测试:
import org.springframework.beans.BeanWrapper; import org.springframework.beans.BeanWrapperImpl; import com.bean.Company;; public class Test { /** * @param args */ public static void main(String[] args) throws Exception { BeanWrapper bean = new BeanWrapperImpl(new Company()); bean.setPropertyValue("name", "my test company"); String companyName = bean.getPropertyValue("name").toString(); System.out.println(companyName); } }
输出:
my test company
参见使用引用:
BeanWrapper company = BeanWrapperImpl(new Company()); // setting the company name.. company.setPropertyValue("name", "Some Company Inc."); // ... can also be done like this: PropertyValue value = new PropertyValue("name", "Some Company Inc."); company.setPropertyValue(value); // ok, let's create the director and tie it to the company: BeanWrapper jim = BeanWrapperImpl(new Employee()); jim.setPropertyValue("name", "Jim Stravinsky"); company.setPropertyValue("managingDirector", jim.getWrappedInstance()); // retrieving the salary of the managingDirector through the company Float salary = (Float) company.getPropertyValue("managingDirector.salary");
地址:http://docs.spring.io/spring/docs/current/spring-framework-reference/html/validation.html