Как сопоставить oneToMany с помощью ModelMapperJAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 Как сопоставить oneToMany с помощью ModelMapper

Сообщение Anonymous »

Я использую SpringBoot, я хочу сопоставить отношения OneToMany от родителя к дочернему элементу. Непосредственно используя объект с нетерпеливой выборкой, я получаю рекурсивные записи, поэтому пытаюсь использовать ModelMapper для сопоставления DTO с Entity, но я не могу понять, как это сделать. Пожалуйста, используйте геттеры и сеттеры.

Parent.java

@Entity
public class Parent {

@Id
private int parentId;

private String a;

@OneToMany(mappedBy = "parent")
private Set child;


Child.java

@Entity
public class Child {

@Id
private int childId;

private String c;

@ManyToOne
@JoinColumn(name = "b")
private Parent parent;


У меня есть рабочий репозиторий и сервисный уровень с методом findAll.

ParentDto.java

public class ParentDto {

private String a;

private Set child;


ParentController.java

@RestController
public class ParentController {

@Autowired
private ModelMapper modelMapper;

@Autowired
private ParentService parentService;

@RequestMapping(method = RequestMethod.GET, value="/parents" )
public List
getParents() {
List parents = parentService.getAll();
return parents.stream()
.map(x-> modelMapper.map(x, ParentDto.class))
.collect(Collectors.toList());
}
}


Ошибка: При попытке получить http://localhost:8080/parents

.
.
ModelMapper mapping errors: 1) Converter org.modelmapper.internal.converter.CollectionConverter@51381583 failed to convert java.util.Set to java.util.Set. 1 error
org.modelmapper.MappingException: ModelMapper mapping errors:

1) Converter org.modelmapper.internal.converter.CollectionConverter@51381583 failed to convert java.util.Set to java.util.Set.

1 error
at org.modelmapper.internal.Errors.throwMappingExceptionIfErrorsExist(Errors.java:380)
at org.modelmapper.internal.MappingEngineImpl.map(MappingEngineImpl.java:80)
.
.


Подробнее здесь: https://stackoverflow.com/questions/565 ... odelmapper
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «JAVA»