【问题标题】:Hibernate - How to write criteria or sql or hql query for combined properties?Hibernate - 如何为组合属性编写条件或 sql 或 hql 查询?
【发布时间】:2016-10-07 03:31:55
【问题描述】:
我已在数据存储区中以不同方式将个人的全名存储为 firstName、middleName 和 lastName。
用户输入全名以搜索个人。
问题是我想同时搜索 firstName、middleName 和 lastName。
而且,我不能制作全名标记,因为可能有嵌入空格。
请帮我。这可要了我的命。
【问题讨论】:
标签:
hibernate
hql
hibernate-criteria
criteria-api
native-sql
【解决方案1】:
你可以使用@Formula
@Column(name = "first_name")
private String firstName;
@Column(name = "last_name")
private String lastName;
@Formula(value = "first_name + ' ' + last_name")
private String name;
然后您可以像查询表中的列一样查询 name 属性
【解决方案2】:
在你的模型中创建一个新的 getter
Public String getFullName(){
return firstName+" "+middleName + " " + lastName;
}
现在在休眠中使用它
hql="From User u where fullName="+fullName;