如何在Hibernate中隐藏对象属性?
我有一个类用户,它有两个属性:如何在Hibernate中隐藏对象属性?,hibernate,spring-boot,Hibernate,Spring Boot,我有一个类用户,它有两个属性:firstName和lastName。我想知道,是否可以从数据库中返回用户对象,隐藏lastName属性。我建议两种方法隐藏对象属性 查询中的第一个: String query = "SELECT u.firstname FROM User u WHERE ..."; return entityManager.createQuery(query, String.class).getSingleResult(); 您只需获得firstname属性 第
firstName
和lastName
。我想知道,是否可以从数据库中返回用户对象,隐藏lastName
属性。我建议两种方法隐藏对象属性
查询中的第一个:
String query = "SELECT u.firstname FROM User u WHERE ...";
return entityManager.createQuery(query, String.class).getSingleResult();
您只需获得firstname属性
第二种方法,获取所有用户对象,但将lastname设置为“”
调用findUser()之后
这是entitymanager的一个示例,但您可以对会话工厂执行相同的操作 “隐藏”是什么意思?你想要达到什么样的结果?“从数据库返回用户对象”是什么意思?用于读取用户实体的代码是什么?问题不清楚。如果你试图在API中隐藏结果,也许你必须考虑使用DTOS。
public User findUser(){
String query = "FROM User u WHERE ...";
return entityManager.createQuery(query, User.class).getSingleResult();
}
User user = userService.findUser();
user.setLastName("");