170 похожих чатов

У меня есть createDto, в которой контракт, что нужно, чтобы

создать сущность, но при этом есть данные, которые мне нужно получить из другого сервиса, чтобы создать сущность. Но в круд-сервисе было бы не очень здорово идти в другой сервис, это не его ответственность, т.е мне либо нужно создать еще одну createDto, но не хочется плодить сущности, либо передавать в круд и createDto и сущность, которая нужна для создания и в круде их джоинить. Как лучше поступить?

20 ответов

19 просмотров

createDto должно прилетать не в круд-сервис, а на сервисный слой, а там уже и другие сервисы можно использовать

Анастасия- Автор вопроса

Понятное дело, что оно туда прилетает, но сущность создается ниже, именно в круде

Если у другого сервиса есть api - сгенерировать по нему классы Саму логику вынести в сервис

Анастасия
Понятное дело, что оно туда прилетает, но сущность...

хм. если все понятно, то в чем траблы?) круд о сервисах не знает. ему только надо подготовленные данные для сохранения. а это на сервисном уровне подготавливают. обычно. или я чето не так понял?

Анастасия- Автор вопроса
Shamil Sabirov
хм. если все понятно, то в чем траблы?) круд о сер...

Я и спрашиваю, как это лучше организовать. Создать новую дто или передавать два параметра, а джоинить в круде.

Анастасия- Автор вопроса
Denis
Если у другого сервиса есть api - сгенерировать по...

Вопрос был не об этом, либо я вас не поняла

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

Анастасия- Автор вопроса
Shamil Sabirov
сделайте сервис, который будет принимать все ваши ...

Вы, кажется, не понимаете, у меня есть сервисный слой, я знаю как достать данные, где достать данные, что с ними сделать. Я не понимаю, как мне лучше эти данные передать в круд-слой, сделать новую createDto или передать и createDto и сущность, с которой нужно будет сджоинить, чтобы получить сущность, которую я закину в базу

Анастасия
Вы, кажется, не понимаете, у меня есть сервисный с...

кажется теперь совсем не понимаю. "Но в круд-сервисе было бы не очень здорово идти в другой сервис" - это о чем, если есть сервисный слой? а CRUD у вас куда смотрит? какая у вас база и стек технологий?

Анастасия- Автор вопроса
Shamil Sabirov
кажется теперь совсем не понимаю. "Но в круд-серви...

Я и говорю, что это плохая идея, так как не его ответственность, поэтому ходить в другой сервис будет сервисный слой, который выше. Что значит, куда смотрит круд? Никуда не смотрит, ходит в репозиторий и все. Стек непринципиален, но вообще котлин+жук, ну и спринг соответственно

Анастасия спрашивает, как быть. Нужно ли для дао сделать ещё одну дто(свою) или передавать две дто со слоя сервисов.

Анастасия
Я и говорю, что это плохая идея, так как не его от...

Я бы сделал свою дто в дао, как только первое изменение и неконсистентность между данными дао и тем, что приходит в сервисы, т.к. если будет меняться мапинг в слое сервисов( переименовываться атрибуты например) то дао будет страдать. Хотя ей должно быть все равно. Но для начала срезал бы угол - проще не делать, пока нет в этом нужды. Это не архитектура, которую будет сложно поменять в будущем

Maxim
Что такое дто в дао?)

Контракт Дао - какая то дто, на основе которой она уже создаёт запись в бд. Аналог entity, если dao jdbcTemplate например. Или можно как-то по-другому?

Maxim
Что такое дто в дао?)

но это это странно. значит сделать новую таблицу в БД(репозитарии)?

Владислав Хакин
Контракт Дао - какая то дто, на основе которой она...

Да, но я к тому что дто обычно не внутри дао Или я просто такой реализации не видел)

помоему я догадался о чем вы говорите. у вас прилетает бизнес сущность в виде DTO + еще какието метаданные возможно. вам их нужно положить в базу, но не в одну таблицу, а в несколько связанных. угодал?)

Анастасия- Автор вопроса
Анастасия- Автор вопроса
Shamil Sabirov
помоему я догадался о чем вы говорите. у вас приле...

Нет, сверху Владислав повторил, что я имела в виду

Похожие вопросы

Обсуждают сегодня

Всем привет! Имеется функция: function IsValidChar(ch: UTF8Char): Boolean; var i: Integer; ValidChars: AnsiString; begin ValidChars := 'abcdefghijklmnopqrstuvwxyzABCDE...
Евгений
44
И никого не интересует какие пакеты кто использует. ((% Заходишь на сайт симфони и видишь поддержку Украины - по законам РФ это ж экстремизм. Только никто не отказывается от с...
Am Ambrion
11
лучше скажите, причём тут паскаль?
Alexey Kulakov
36
Чтобы перехватить все нажимания буков на форме, надо хук ставить? Пробовал на форме ОнКейДаун, оно ловит клаву если фокус не на компоненте с вводом текста
Serjone
15
Но, может, есть уже проверенная? Наши требования такие: 1. Сообщения должны приходить из Инста в CRM оду 2. Должна быть возможность подключить несколько экаунтов Инстаграм. Р...
Alexander Sharoiko MSE / Александр Шаройко
7
Народ! Впервые клиенту пришло письмо от РКН, у вас, дескать, есть яндекс метрика, а нигде не написано, что вы ее юзаете. Никто не сталкивался?
Sasha Beep
14
Всем привет! вывожу на общей стр дочерние ресурсыв каждом ресурсе галерея, и первая фотка должна выводиться на общей [!DocLister? &prepare=photo !]
Alekso
12
Я правильно понимаю что нет способов получить список ожидающих заявок на вступление в группу с помощью бота из mtproto?
Шамиль Прилов
7
А можно вопрос? Мне сегодня сказали что у меня функция (которая просто заполняет массив значениями) не правильная void Full(double * arr, int n) { for (int i = 0; i < n; i...
† C E †
7
Добрый вечер. Хочу чтобы у меня в классе поле было функцией, которая возвращает строку. Делаю так: interface ... TGetOutPath = function : String of object; ... protec...
Kirill Filippenok
12
Карта сайта