使用Criteria +投影时在getter中包含代码

时间:2018-01-03 15:50:14

标签: java hibernate hibernate-criteria

我在实体中有这个吸气剂:

    public String getEmpType() {
    return empType == null ? "EMP" : empType;
}

我在Dao中使用Criteria +投影:

Criteria criteria = session.createCriteria(Employee.class); criteria.add(Restrictions.eq("employeeKey",key)) .setProjection(Projections.projectionList().add(Projections.property("empType")));

现在我想在getter中应用相同的规则(例如,如果empType为null将其设置为EMP),而不在此处复制代码..有没有办法这样做? 即我希望Criteria在实体中使用getter 注意:我正在使用hibernate 3.1.0

1 个答案:

答案 0 :(得分:0)

使用静态方法创建一个类,可以在

这两种情况下使用
public class EmpTypeHelper {

    public static String getEmpTypeOrDefault(String emptType) {
        return empType == null ? "EMP" : empType;
    }
}