不想将数据保存到第二个表中
我有两个实体一个用户(Owing实体 - 由字段roleId作为用户和角色之间的映射),另一个是Role。 角色已经在数据库中创建。 我有屏幕在用户选择用户创建特定用户角色的位置。 当我保存数据时,我只想保存用户详细信息以及用户表中的角色ID。 我不想保存角色的详细信息,因为它已经存在。
我使用Hibernate进行持久化。 使用@OneToOne映射。
@Entity
public class User{
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private Long id;
@Column(nullable = false)
private String firstName;
@Column(nullable = false)
private String lastName;
@OneToOne(fetch = FetchType.EAGER)
@JoinColumn(name = "role_id")
private Role role;
}
@Entity
public class Role {
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private Long id;
@Column(unique = true, nullable = false)
private String role;
}
目前它正试图保存用户和角色的详细信息。 这不是必需的。 请帮助解决问题。
我建议你限制级联删除:
@OneToOne(fetch = FetchType.EAGER, cascade = CascadeType.REMOVE)
@JoinColumn(name = "role_id")
private Role role;
链接地址: http://www.djcxy.com/p/63685.html