1
我有一个实体是这样的:隐藏密码字段
public class User {
@Column(name = "password")
@Element(name = "pass", data = true)
private String password;
}
我想是该领域的密码不被读取/默认填入查询。但是在某些情况下,我当然想要检查PWD,在这种特殊情况下,PWD应该被用户对象中的openJPA读取和填充。
我可以用什么样的Fetch策略或JPQL查询来实现? 我认为FetchType.Lazy只适用于联合表格而不是单个字段。 此外,我无法想象一个JPQL查询,我可以告诉openJPA覆盖此FetchType并加载此字段,以防我真的需要PWD检查。
非常感谢! 塞巴斯蒂安
你为什么关心,如果它的加载?您是否将该实体按原样发送给第三方?你是否以明文形式存储密码?如果是这样,这是主要的安全问题。给它们加盐并将它们散列。 –
pwd已经被哈希了。它也隐藏在实体发送给客户端之前......但是这种解决方法相当难看。因此,我正在寻找不需要为每个实体创建额外的DTO的替代方案。 –