ModelMapper выдает белое преобразование из строки в ObjectId - PullRequest
0 голосов
/ 09 февраля 2019

У меня есть Entity (Course) и DTO (CourseDto) с весенней загрузкой в ​​качестве API-сервера, серверная часть - в качестве mongo

@Document(collection = "courses")
public class Course {
     @Id private ObjectId id;
     ....
}

public class CourseDto {
  private String id; 
  ....
}

Я использую модель-конвертер для преобразования из CourseDto в Course и наоборот.Преобразование идентификатора курса (ObjectId) в идентификатор CourseDto (String) происходит правильно (аналогично course.getId (). ToHexString ()).Это дает мне hexstring.Но когда я пытаюсь конвертировать из CourseDto в Course (String id в ObjectId), тогда генерируется совершенно новый ObjectId.

Я знаю, что могу использовать конвертер, но это применимо, продумал все мои 50+ классов сущностей + также дляглубоко вложенные объекты.Например, курс содержит список тем, а каждая тема содержит список идентификаторов статей (List of ObjectId).Насколько я знаю, я могу прикрепить преобразованный к определенному преобразователю модели (в данном случае к преобразователю модели курса)

В основном я ищу универсальное решение, в котором должно произойти правильное преобразование из String в ObjectId (новый ObjectId (myString))и новый ObjectId не будет создан.

Заранее спасибо

...