У меня есть Entity (Course) и DTO (CourseDto) с весенней загрузкой в качестве сервера API, бэкэнд как mongo
@Document(collection = "courses")
public class Course {
@Id private ObjectId id;
....
}
public class CourseDto {
private String id;
....
}
Я использую modelmapper для преобразования из CourseDto в Course и наоборот. Преобразование из идентификатора курса (ObjectId) в идентификатор курса (String) происходит правильно (аналогично course.getId (). ToHexString ()). Это дает мне шестнадцатеричную строку. Но когда я пытаюсь преобразовать из CourseDto в Course (String id в ObjectId), создается совершенно новый ObjectId.
Я знаю, что могу использовать конвертер, но это применимо для всех моих 50+ классов сущностей + также для глубоких вложенных объектов. Например. Курс содержит список тем, и каждая тема содержит список идентификаторов статей (List of ObjectId). Насколько мне известно, я могу прикрепить преобразованный к конкретному картографу модели (в данном случае к картографу модели курса)
В основном я ищу общее решение, в котором произойдет правильное преобразование из String в ObjectId (новый ObjectId (myString)), а новый ObjectId не будет создан.
заранее спасибо