0

Я пытаюсь внедрить репозиторий (MongoRepository) в свои объекты домена, и я выполнял инструкции от этого link, но, похоже, не в состоянии его правильно исправить. Кто-нибудь делал это раньше? Я использую Spring Data Mongo.Ввод MongoRepository в объекты домена

+0

Не вводите репозитории в объекты домена. Вместо этого отправьте объекты домена в репозиторий. – MikeSW

+0

Не понимаю, Майк. Это ваше решение? Я пытаюсь применить шаблон Driven Design, и я пытаюсь использовать репозитории Spring Data (JPA или Mongo). – Reza

+0

DDD - это не образец, это мышление. В любом случае, объекты домена не должны знать о репозитории, поскольку это не их ответственность. Приложение будет использовать репозиторий для сохранения/загрузки объектов домена. Вы хотите решение, но для неправильной проблемы. – MikeSW

ответ

0

Я думаю, что это ненужные накладные расходы (используйте АОП). Вы можете решить это с помощью простой Java. Возьмите класс репозитория, способный создавать объекты и выполнять автоматическую инъекцию внутри них.

Для образца:

public class MyBusinessRepository { 

public MyBusinessClass create() { 
    return new MyBusinessClass(this); 
} 

... 

} 

Considerating "MyBusinessClass" с конструктором, который получит хранилище в качестве аргумента.

В любом случае, если вы действительно хотите сделать это с AOP, покажите нам сообщения об ошибках.

+0

Вы бы никогда не делали этого с помощью подхода DDD. Как указано в комментариях выше, объекты домена никогда не будут ссылаться на репозиторий или быть зависимыми от него. Кроме того, репозитории не используются для создания новых экземпляров, заводы имеют такую ​​ответственность. И я бы предложил использовать какой-то тип инструмента «Инверсия управления» (IoC) для управления зависимостями, а не ссылками с жестким кодированием, как у вас выше. – SonOfPirate

 Смежные вопросы

  • Нет связанных вопросов^_^