我可以通过DTO / Entity查询休眠,而不是单个字段

时间:2015-09-10 12:02:24

标签: java hibernate

我有一个关于在hibernate中查询的问题。如果有一种方法可以在没有明确指定原因的情况下进行搜索?

所以我的意思是:假设我有一个包含10列的搜索表单,这些列绑定到我的dto字段。因此,用户可以填充其中一些,并将其余部分留空。现在我想只搜索指定(填充)的字段并将空值留下(它们无关紧要)。

所以查询将是这样的:

select e 
from entity e 
where e.entity = e.searchedCriteriaEntityGivenInDTO  

或者通过jpg的一个更好的例子:我想拥有所有样本实体而不指定“where number,where name,where firstanme”,但是通过“dtoFields”在我的dto之上。如上所述,应该忽略空值。

提前多多感谢。

sample

[编辑]:感谢Dragon我有一个很好的解决方案,但我还有一个问题:我有2行,我可以搜索一下吗?我的查询应该如下:

select e 
from example e, 
where (e.entity = example) OR (e.entity = example2);

我试着把

session.createCriteria(MyEntity.class).add(Example.create(myEntityExample))

进入OR-Predicate,但它似乎不起作用。

有什么建议吗?

0 个答案:

没有答案