java-如何避免休眠中的字符串成员?
作者:互联网
是否有可能避免在Hibernate中使用字符串文字,例如在条件限制和预测中:
Criteria criteria = session.createCriteria(Employee.class)
.add(Restrictions.eq("name", "john doe"));
要么
投影p1 = Projection.property(“ name”);
例如,在上面的代码段中,将“ name”替换为something.name
,其中包含Employee类的所有成员.
这样可以减少出错的可能性,例如字符串中的错字.
编辑:更新问题更为笼统,而不仅仅是标准.
解决方法:
您可以创建一个Employee Constants类:
public class EmployeeConstants {
public static final String firstName= "firstname";
public static final String lastName= "lastname";
....
}
并将字段称为:
Criteria criteria = session.createCriteria(Employee.class)
.add(Restrictions.eq(EmployeeConstants.firstName, "john doe"));
实际上,EmployeeConstants.firstName返回的名字必须是Employee实体的字段名称.
标签:hibernate,hibernate-criteria,java,java-ee 来源: https://codeday.me/bug/20191027/1942091.html