我们有以下代码问题。我们的代码必须根据某个对象的字段做出很多决定,有时这些字段是通过复杂的路径访问的:
public void perform(OurBean bean) {
if (bean != null
&& bean.getWaybill() != null
&& bean.getWaybill().getTransaction() != null
&& bean.getWaybill().getTransaction().getGuid() != null) {
// Do some action with the guid - a string
}
}
我想要的是做这样的事情:
public void perform(OurBean bean) {
if (notEmpty(bean, "waybill.transaction.guid")) {
// Do some action with the guid - a string
}
}
现在我们已经使用反射机制自己实现了这样的功能。有更好的方法吗?JSP EL 正是我们所需要的——使用 getter 和 setter 方法的表达式。但是我怎样才能在 Java 代码而不是 JSP 页面中为某个对象使用它呢?到目前为止找不到任何好的样品。