Как стать автором
Обновить
0
1
Дмитрий @Urgen

Умный, красивый, скромный

Отправить сообщение

На прошлом месте работы это называли "работой по специальности"

>Strong Junior Developer
сильно!
Заинтересовала возможность получения информации о пользователях, используя Slack API.

А зачем писать свой велосипед, если в последних версиях Java появился HTTP-клиент?
этот блог в своё время здорово мне помог. жду цикл статей. хотя сам я уже благополучно слез с IIB (переводим интеграционные приложения на Java/Spring Boot), почитать всё равно будет интересно.
Один из удобных способов трансформации сообщения из одного формата в другой это Data Mapping:

никогда не используйте это, т.к. оно не отлаживается (в отличие от ESQL)
в ссылочки можно добавить ещё sharavara.com/category/iib и developer.ibm.com/integration/docs/ibm-integration-bus/self-study-labs
с ModelMapper не работал, использую MapStruct, и там это решается следующим образом
— Затрудняют поиск использования полей в коде

маппинг делается в интерфейсах, для которых генерируются реализации. в реализациях маппинг прописан явно, проблема с поиском отпадает
— При внесении изменении в entity/dto проблемы сломанного мапинга будут видны только в рантайме

если что-то пойдёт не так, приложение просто не соберётся
Ошибки на стороне сервера можно разделить (как минимум) на 2 типа:
1. Бизнес ошибка. Например вы пытаетесь выполнить какое-то действие с объектом, а он имеет не подходящий статус. Вполне логично вернуть код 200 с описанием ошибки согласно контракту, т.к. на стороне сервера ничего не поломалось.
2. Собственно ошибка на стороне сервера. Например deadlock на БД. Тут логично вернуть 500.
sql error в этом случае вылазит, как правило, уже при запуске (spring boot и т. п.) или деплое приложения на сервер и выявляется разработчиком. до продакшена такое приложение не дойдёт.
а почему используете rabbitmq, а не activemq от того же апача?
оффтоп
а какой поисковик используют разработчики яндекс, когда им нужно что-то загуглить?)
Смущает возрастная граница молодого специалиста — до 30 лет. Большинство к этому возрасту имеют опыт работы 5+ лет и успевают переболеть описанными в статье «детскими болезнями».
Удивлён. А ещё удивлён, что здесь вообще используются понятия «паттерн» и «антипаттерн». В моём понимании паттерн — готовое решение для какой-то проблемы, которое можно вписать в любую архитектуру, решение более высокого уровня. Так что впору вводить понятие «антиархитектура»)
Если часть логики поместить в сущности, а часть в сервисы, можно запутаться. Удобнее когда вся логика одного уровня находится в одном месте — в сервисах. В сущностях видел только что-то очень простое, типа валидации. Сам пишу на java, но сомневаюсь, что в других ОО языках это будет сильно отличаться.
Либо я невнимательно читал, либо автор подобрал неудачные примеры. В первый раз вижу, чтобы в классах-сущностях находилась какая-то бизнес-логика.
Eclipse тоже понимает, но только после плясок с бубном)
Вы, похоже, смотрели какие-то древние туториалы. А от привязки к конкретной среде вообще нужно абстрагироваться.
А конфигурацию и не нужно размазывать по куче файлов. Это уже ошибка в архитектуре проекта и она не имеет отношения к конкретной реализации, будь то конфигурирование с помощью аннотаций или xml.
Не знаю, есть ли это в jee 6, но в jee 7 в web.xml сервлеты можно вообще не прописывать, у меня, например, в одном из тестовых проектов в web.xml заполнено только название проекта. Сами сервлеты в коде помечаются аннотацией WebServlet.

Информация

В рейтинге
1 683-й
Откуда
Ижевск, Удмуртия, Россия
Дата рождения
Зарегистрирован
Активность