Java 在基于路径的对象中是否有设置值的内容?
我需要的是:Java 在基于路径的对象中是否有设置值的内容?,java,reflection,set,setvalue,Java,Reflection,Set,Setvalue,我需要的是: Person p = new Person(); Command.set(p, "person.name", "William"); //After that method call in line above, p.getName() should return "William" 我需要尽可能通用的set方法,也就是说,不仅是person参数,而且是我想要的任何ValueObject。 我开始使用反射来研究这个算法,但我不确定这是否合适,而且它做了很多工作。我想知道是否已经做
Person p = new Person();
Command.set(p, "person.name", "William");
//After that method call in line above, p.getName() should return "William"
我需要尽可能通用的set方法,也就是说,不仅是person参数,而且是我想要的任何ValueObject。
我开始使用反射来研究这个算法,但我不确定这是否合适,而且它做了很多工作。我想知道是否已经做了什么,比如Java框架
提前谢谢 它看起来确实有点像。但是,推土机用于将A类映射到B类。例如,此推土机映射:
<mapping>
<class-a>org.dozer.vo.deep.SrcDeepObj</class-a>
<class-b>org.dozer.vo.deep.DestDeepObj</class-b>
<field>
<a>srcNestedObj.src1</a>
<b>dest1.firstObj.secondObj.destVar</b>
</field>
</mapping>
看看ApacheCommonsBeanutils()中的PropertyUtilsBean 应该简单到:
Person p = new Person();
PropertyUtils.setProperty(p, "name", "William");
库还支持设置嵌套属性,例如
PropertyUtils.setProperty(p, "address.street", "Route 69");
// equivalent of p.getAddress().setStreet("Route 69")
这是一个购物清单问题,对于这个平台来说不是一个好问题。你应该使用你最喜欢的搜索引擎。是应该出现的东西。另请参见帮助页面。谢谢,就这样!尽管嵌套属性直到此时才起作用。
PropertyUtils.setProperty(p, "address.street", "Route 69");
// equivalent of p.getAddress().setStreet("Route 69")