コードに次の問題があります。私たちのコードは、いくつかのオブジェクトのフィールドに従って多くの決定を下す必要があり、フィールドは複雑なパスを介してアクセスされる場合があります。
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
}
}
現在、Reflection メカニズムを使用して、独自に実装されたそのような関数があります。それを行うより良い方法はありますか?JSP EL には、getter メソッドと setter メソッドを使用した式というまさに必要なものがあります。しかし、JSP ページではなく Java コード内でオブジェクトを使用するにはどうすればよいでしょうか。これまでのところ、良いサンプルは見つかりませんでした。