這只是一個(gè)小提醒
這里有兩種方式,很簡(jiǎn)單
1、在application.properties中配置
#懶加載配置
spring.jpa.properties.hibernate.enable_lazy_load_no_trans=true
2、在entity中添加注解
- 在關(guān)聯(lián)對(duì)象上添加@JsonBackReference
- 在類上添加@JsonIgnoreProperties("roles"),括號(hào)中填寫不需要查出的對(duì)象
@Entity
@Table(name = "users")
//@JsonIgnoreProperties("roles")
public class User implements Serializable {
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Id
private int id;
@Column
private String name;
@Column(name = "created_at")
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date createdAt;
@ManyToOne
@JoinColumn(name = "dep_id")
@JsonBackReference //防止關(guān)系對(duì)象的遞歸訪問(wèn)
private Department department;
@ManyToMany(cascade = {}, fetch = FetchType.EAGER)
@JoinTable(name = "user_role", joinColumns = {@JoinColumn(name = "user_id")}, inverseJoinColumns = {@JoinColumn(name = "role_id")})
@JsonBackReference
private List<Role> roles = new ArrayList<>();
......
}