小编eak*_*tas的帖子

org.hibernate.TransientObjectException:object引用未保存的瞬态实例 - 在刷新之前保存瞬态实例

在项目中,我有User,Role,UserRoleBloodGroup实体.首先,我List<BloodGroup>从数据库中取出并设置为User.然后我给予UserRole参与其中UserRole.之后我插入User到DB,然后我尝试插入UserRole,但是我收到一个错误.当我查看DB时,ID BloodGroup未插入User表中.

如果我选择BloodGroup列表中的第一个,我会收到错误.其他选择是正常的.

我发现cascade = CascadeType.ALL,我看着互联网,但这会添加相同的数据BloodGroup,这意味着我有更多的Arh + BloodGroup.

实体:

@Entity
@Table(name="USERS")
public class User implements Serializable {

    private static final long serialVersionUID = 1L;

    @Id
    @GeneratedValue(strategy=GenerationType.AUTO)
    private long userid;

    @OneToMany(mappedBy="user")
    private List<Userrole> userroles;

    //bi-directional many-to-one association to Bloodgroup
    @ManyToOne
    @JoinColumn(name="BLOODGRUPID")
    private Bloodgroup bloodgroup;

}
Run Code Online (Sandbox Code Playgroud)
@Entity
public class Bloodgroup …
Run Code Online (Sandbox Code Playgroud)

java orm spring hibernate

22
推荐指数
2
解决办法
10万
查看次数

标签 统计

hibernate ×1

java ×1

orm ×1

spring ×1