나는 최대 절전 모드를 ORM으로 사용하고 있습니다. 그리고 나는 두 개의 개체 인 Shop
과 TypeShop
을 가지고 있습니다. TypeShop
에는 몇 개의 상점이있을 수 있습니다. 최대 절전 모드 onetomany manytoone 문제
@Entity
@Table(name = "shops")
public class Shop {
...
@ManyToOne(fetch=FetchType.EAGER)
@JoinColumn(name = "shop_type_id")
private TypeShop typeShop;
...
}
내가 모든 shops
JSON 형식으로 id
TypeShop
로를 찾으려면
@Entity
@Table(name = "shop_types")
public class TypeShop {
...
@OneToMany(fetch = FetchType.EAGER, mappedBy="typeShop", cascade = CascadeType.ALL)
private Set<Shop> shops;
...
}
및
내가 이런 걸 얻을 :[{"id":146,"name":"First Name","address":"First Address","description":"First Description","coordinates":"59.842055288480076, 29.700164794921875","contacts":"First Contacts","site":"First web site","mail":"First email","photos":[],"typeShop":{"id":11,"name":"Производство газобетона","shops":[{"id":146,"name":"First Name","address":"First Address","description":"First Description","coordinates":"59.842055288480076, 29.700164794921875","contacts":"First Contacts","site":"First web site","mail":"First email","photos":[],"typeShop":{"id":11,"name":"Производство газобетона","shops":[{"id":146,"name":"First Name","address":"First Address","description":"First Description","coordinates":"59.842055288480076, 29.700164794921875","contacts":"First Contacts","site":"First web site","mail":"First email","photos":[],"typeShop":{"id":11,"name":"Производство газобетона","shops":[{"id":146,"name":"First Name","address":"First Address","description":"First Description","coordinates":"59.842055288480076, 29.700164794921875","contacts":"First Contacts","site":"First web site","mail":"First email","photos":[],"typeShop":{"id":11,"name":"Производство газобетона","shops":[{"id":146,"name":"First Name","address":"First Address","description":"First Description","coordinates":"59.842055288480076, 29.700164794921875","contacts":"First Contacts","site":"First web site","mail":"First email","photos":[],"typeShop":{"id":11,"name":"Производство газобетона","shops":[{"id":146,"name":"First Name","address":"First Address","description":"First Description","coordinates":"59.842055288480076, 29.700164794921875","contacts":"First Contacts","site":"First web site","mail":"First email","photos":[],"typeShop":{"id":11,"name":"Производство газобетона","shops":[{"id":146,"name":"First Name","address":"First Address","description":"First Description","coordinates":"59.842055288480076, 29.700164794921875","contacts":"First Contacts","site":"First web site","mail":"First email","photos":[],"typeShop":{"id":11,"name":"Производство газобетона","shops":[{"id":146,"name":"First Name","address":"First Address","description":"First Description","coordinates":"59.842055288480076, 29.700164794921875","contacts":"First Contacts","site":"First web site","mail":"First email","photos":[],"typeShop":{"id":11,"name":"Производство газобетона","shops":[{"id":146,"name":"First Name","address":"First Address","description":"First Description","coordinates":"59.842055288480076, 29.700164794921875","contacts":"First Contacts","site":"First web site","mail":"First email","photos":[],"typeShop":{"id":11,"name":"Производство газобетона","shops":[{"id":146,"name":"First Name","address":"First Address","description":"First Description","coordinates":"59.842055288480076, 29.700164794921875","contacts":"First Contacts","site":"First web site","mail":"First email","photos":[],"typeShop":{"id":11,"name":"Производство газобетона","shops":[{"id":146,"name":"First Name","address":"First Address","description":"First .....
을 그리고 목록은 계속해서 간다. 가져 오기 유형 EAGER
으로 인해 볼 수 있듯이 json 형식이 무한합니다. EAGER
을 LAZY
으로 변경하려고했으나 “failed to lazily initialize a collection of role” exception
이 있습니다.
이 문제를 어떻게 해결할 수 있습니까? 미리 감사드립니다!
편집 됨 : 내가 Shop
엔티티로부터 TypeShop
에 대한 게터를 제거하면 이 도움이됩니다. 그러나 더 좋은 방법이 있다면 나는 궁금해.