paw*_*que 9 java xpath ognl object-graph
在我正在开发的系统中,我经常需要导航对象树,并根据其状态和值采取行动.在普通的Java中,这导致了繁琐的for循环,if语句等...是否有其他方法来实现树导航,类似于XPath for XML?我知道有JXPath和OGNL,但你知道其他任何库吗?您是否知道任何为特定树导航表达式生成字节码的库,以使处理速度与Java本机fors和ifs一样快?
您可能想要考虑Jakarta Bean Utils
String street = (String) PropertyUtils.getProperty(user, "address.street");
Run Code Online (Sandbox Code Playgroud)
您可以使用点表示法浏览对象图.您还可以访问索引属性.有关文档的更多详细信息.
一个缺点是Bean Utils期望您导航的图形不包含空引用.
下面的代码片段会抛出一个NPE
Person person = new Person();
person.setAddress(null);
String street = (String) PropertyUtils.getProperty(person, "address.street");
Run Code Online (Sandbox Code Playgroud)
为了克服这个限制,我的团队实现了一个类,该类根据需要创建图的所有空引用的实例.此代码基于反射和动态代理(CGLIB).
| 归档时间: |
|
| 查看次数: |
4167 次 |
| 最近记录: |