Скажем, у меня есть User
объект, который генерируется Usermapper
. Объект User
ничего не знает об используемой базе данных / хранилище (что я считаю хорошим дизайном).
При создании User
я хочу, чтобы он был заполнен картографом самыми тривиальными вещами, например, Имя, адрес и т. Д. Однако после создания экземпляра объекта у меня может появиться метод userX.getTotalDebt()
, getTotalDebt()
потребуется переподключиться к базе данных, поскольку я не хочу, чтобы эта относительно дорогая операция выполнялась для каждого экземпляра пользователя (необходимо несколько таблиц так далее). Если бы я просто вставил немного sql в getTotalDebt()
или зависимость обратно в Mapper
, где связность очень быстро нарастает.
Существует очевидная хорошая / лучшая практика для этого, потому что часто возникает такая ситуация, однако я не могу ее найти, или я смотрю на эту проблему полностью под неправильным углом.