是否可以通过自定义实体的主键而不是仅通过其他字段将其存储在jpa中?
在我的数据库结构中,提到的列表存储为TEXT,其值用逗号分隔。此时问题就开始了,因为在实体类中,主键是标识符(UUID),但是它需要由其他人存储,更具体地说是由实体名称存储。
用户实体代码段:
@Entity
@Table(name = "users")
public class UserEntityImpl implements UserEntity {
@Type(type = "uuid-char")
@Id
@Column(name = "uuid", nullable = false, columnDefinition = "VARCHAR(32)")
private UUID identifier;
@Column(columnDefinition = "TEXT", nullable = false)
private String name;
...
组实体代码段:
public class GroupEntityImpl implements GroupEntity {
...
@ElementCollection
@Column(columnDefinition = "TEXT", nullable = false)
private List<UserEntity> members;
...
我能想到的唯一解决方案是创建一个实体转换器,但我不知道它应该如何工作。