问题描述
Hibernate @OneToOne 双向关联中,主表如何懒加载?
相关代码
@Entity
@Table(name = "db_user")
public class User{
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Integer id;
private String name;
@JSONField(serialize=false)
@OneToOne(fetch = FetchType.LAZY,mappedBy = "accountUser")
private Account account;
//get set
}
@Entity
@Table(name = "db_account")
public class Account{
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Integer id;
private Double money;
@Column(name="user_id",insertable = false,updatable = false)
private Integer userId;
@JSONField(serialize = false)
@OneToOne(fetch = FetchType.LAZY)
@JoinColumn(name="user_id")
private User accountUser;
//get set
}
查询Account时,Account.accountUser是可以懒加载的,
但是当查询User时,User.account就会立刻执行查询,懒加载失效。
在数据库中两个表都没有外键关联,想向大家请教一下如何才能使User.account的懒加载生效?