微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

休眠:寻找一种简化使用对象搜索对象的方法

如何解决休眠:寻找一种简化使用对象搜索对象的方法

|| 我正在使用Hibernate Core3.3.4.GA。我正在寻找一种简化代码方法(如果可能的话)。现在,我想使用MyObj的实例搜索\“ MyObj \”类型的对象,该实例将被部分填充。所以我有
// inputObj is a partially populated object of type MyObj
Criteria crit = session.createCriteria(MyObj.class);
if (inputObj.getField1() != null) { 
    crit.add( Restrictions.eq( \"field1\",inputObj.getField1() );
}
if (inputObj.getField2() != null) { 
    crit.add( Restrictions.eq( \"field2\",inputObj.getField2() );
}
…
List objects = crit.list();
问题是,有20多个字段,因此代码繁重。有没有一种方法可以简化上述过程? 谢谢-戴夫     

解决方法

        使用org.hibernate.criterion.Example获得您正在描述的行为:
    List results = session.createCriteria(MyObj.class)
        .add( Example.create(inputObj) )
        .list();
参考文档的15.4节对此进行了描述。     

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。