Spring 如何使用特定于应用程序的属性增强通用模块实体?
我目前正在开发一个库,该库处理spring安全设置,以将多个应用程序与通用登录应用程序集成。当然,我定义了一个用户实体Spring 如何使用特定于应用程序的属性增强通用模块实体?,spring,hibernate,jpa,spring-data,spring-data-jpa,Spring,Hibernate,Jpa,Spring Data,Spring Data Jpa,我目前正在开发一个库,该库处理spring安全设置,以将多个应用程序与通用登录应用程序集成。当然,我定义了一个用户实体 @Entity @Table(name = "users") @Data @ToString(of = { "username", "uuid" }, callSuper = true) @EqualsAndHashCode(of = "username", callSuper = false) @NoArgsConstructor public class User impl
@Entity
@Table(name = "users")
@Data
@ToString(of = { "username", "uuid" }, callSuper = true)
@EqualsAndHashCode(of = "username", callSuper = false)
@NoArgsConstructor
public class User implements UserDetails {
@Id
@NotNull
private String username;
private String uuid;
private String displayName;
private String email;
... //the usual stuff
}
每个应用程序都有自己的需求,需要用更多的属性增强用户。这怎么可能呢
我考虑过使用aspectj(我使用lombok,所以这不是我的第一选择),一定有其他方法吗
谢谢,
Tim为每个应用程序扩展
User
类有什么问题?JPA继承如何?每个应用程序都将从可以充当@MappedSuperclass的用户派生。问题是,我在该库中有几个服务和spring数据存储库,它们都使用用户实体。我想我必须使用一个托管实体,而不能使用映射的超类。这意味着我不能真正扩展用户类(如果我在这一点上错了,请告诉我为什么)。