我有一个名为 Users
的实体,其登录名、姓名和部门作为存储在 Users
表中的字段。
我的 Spring-Boot
配置定义了为该应用程序中的用户提供系统管理员角色的部门。
关键问题是我希望登录端点
返回用户数据以及他/她是否是系统管理员的附加信息。
我认为此信息应该位于 User 类中,但我不希望此信息与其他字段一起存储在数据库中,因为管理部门可能会发生变化,或者用户从一个部门更改为另一个部门也会发生这种情况不管理系统。
(编辑)当用户请求登录()时,我将定义此IsManager字段:我将获取用户的department
字段并检查managerDepartment
的列表将其设置为 true 或 false。
所以问题是,将该信息放入实体类中的非持久字段中是否正确(以及如何做到这一点),或者我是否可以更改其余方法中的 ResponseEntity 以添加附加信息(以及如何)?
最佳答案
简短的答案是使用@Transient注释。 正确的答案是将 UserEntity 和 UserDto 分离为两个不同的类,并使用 MapStruct 进行转换。
关于java - 如何在 JPA 实体中创建非持久字段?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47265594/