[SPRING] 봄 부팅 Mapstruct StackOverFlow 오류
SPRING봄 부팅 Mapstruct StackOverFlow 오류
mapstruct를 사용하여 내 엔티티 및 클래스를 매핑합니다 ... 내 매퍼 클래스의 루프에 문제가 있습니다 ...
나는 무엇을해야할지 모르겠다 ... 이것은 나의 매퍼 클래스이다.
@Mapper(componentModel = "spring", uses = {BrandMapper.class})
public interface VehicleTypeMapper {
VehicleTypeDTO vehicleTypetoVehicleTypeDTO(VehicleType vehicleType);
Iterable<VehicleTypeDTO> vehicleTypetoVehicleTypeDTO(Iterable<VehicleType> vehicleTypes);
VehicleType vehicleTypeDTOtoVehicleType(VehicleTypeDTO vehicleTypeDTO);
}
@Mapper(componentModel = "spring", uses = { VehicleTypeMapper.class, ModelMapper.class })
public interface BrandMapper {
BrandDTO brandtoBrandDTO(Brand brand);
Iterable<BrandDTO> brandtoBrandDTO(Iterable<Brand> brands);
Brand brandDTOtoBrand(BrandDTO brandDTO);
}
내 엔터티 클래스 ... DTO는 내 엔터티 클래스와 동일한 특성을가집니다 ...
@Entity
@Table(name = "tb_brand")
public class Brand implements Serializable {
private static final long serialVersionUID = 1506494747401320985L;
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name = "id", nullable = false)
private Long id;
@ManyToOne
@JoinColumn(name = "vehicle_type_id", foreignKey = @ForeignKey(name = "fk_vehicle_type"))
private VehicleType vehicleType;
@JsonIgnore
@OneToMany(mappedBy = "brand", fetch = FetchType.LAZY, cascade = CascadeType.ALL)
private List<Model> models;
@Column(name = "description", nullable = false)
private String description;
//GETS AND SETS
}
@Entity
@Table(name = "tb_vehicle_type")
public class VehicleType {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name = "id", nullable = false)
private Long id;
@JsonIgnore
@OneToMany(mappedBy = "vehicleType", fetch = FetchType.LAZY, cascade = CascadeType.ALL)
private List<Brand> brands;
@Column(name = "description", nullable = false)
private String description;
//GETS AND SETS
}
스택 추적
at br.com.meuveiculocerto.business.mapper.VehicleTypeMapperImpl.brandListToBrandDTOList(VehicleTypeMapperImpl.java:81) ~[classes/:na]
at br.com.meuveiculocerto.business.mapper.VehicleTypeMapperImpl.vehicleTypetoVehicleTypeDTO(VehicleTypeMapperImpl.java:33) ~[classes/:na]
at br.com.meuveiculocerto.business.mapper.BrandMapperImpl.brandtoBrandDTO(BrandMapperImpl.java:35) ~[classes/:na]
at br.com.meuveiculocerto.business.mapper.VehicleTypeMapperImpl.brandListToBrandDTOList(VehicleTypeMapperImpl.java:81) ~[classes/:na]
누군가 루핑 이유를 확인하도록 도와 줄 수 있습니까?
해결법
-
==============================
1.VehicleType과 브랜드간에 주기적으로 종속됩니다. 사이클을 해결할 수있는 가능성은 3 가지입니다.
VehicleType과 브랜드간에 주기적으로 종속됩니다. 사이클을 해결할 수있는 가능성은 3 가지입니다.
참고 : 1.2.0 릴리스는 "즉시"제공되는 순환 매핑을 제공하지 않으므로 명시 적으로 사용자가 수행해야합니다.
from https://stackoverflow.com/questions/45652298/spring-boot-mapstruct-stackoverflow-error by cc-by-sa and MIT license
'SPRING' 카테고리의 다른 글
[SPRING] 응용 프로그램 시작 /로드 중에 SQL을 실행하여 데이터베이스를 채우는 방법 (0) | 2019.04.28 |
---|---|
[SPRING] 필드가 Null이 아닌 경우에만 유효성 검사 (0) | 2019.04.27 |
[SPRING] Spring에서 임시 JMS jms 주제 만들기 (0) | 2019.04.27 |
[SPRING] 연결 풀 문제 (0) | 2019.04.27 |
[SPRING] Spring autowired ... autowired 클래스에 소스 클래스 전달 (0) | 2019.04.27 |