Size: a a a

2021 March 07

AG

Asad Ganiev in pro.jvm
то есть загружаю файл в ручную
источник

AG

Asad Ganiev in pro.jvm
источник

IK

Igor Komarov in pro.jvm
Подскажите пожалуйста, снова вожусь с Quartz + Spring Boot, видимо пытаясь добиться от него нестандартного поведения.

Я определил отдельный data-source для Quartz, и прописал в конфиге спринга:

spring.quartz.job-store-type=jdbc
spring.quartz.jdbc.initialize-schema=always


при этом, на старте спринг создает без учета заданных в application.properties настроек (типа префикса таблиц) в основном data-source приложения таблицы кварца.

Сам же Quartz во время запуска приложения закономерно лезет в свой, определенный в application.properties data-source, и закономерно же ничего там не находит и ломается.

Можно ли как-то сказать спрингу, что миграции quartz нужно применить к data-source, относящемуся именно к его конфигурации?
источник

V

Vadim in pro.jvm
Ребят, у меня тут линтер ругается на то, что я передаю Entity в RequestBody и просит заменить его на POJO или DTO. Может кто пояснить зачем это и почему? Заранее спасибо!
источник

Э

Эд in pro.jvm
Vadim
Ребят, у меня тут линтер ругается на то, что я передаю Entity в RequestBody и просит заменить его на POJO или DTO. Может кто пояснить зачем это и почему? Заранее спасибо!
Что за линтер такой умный? Я тоже хочу
источник

V

Vadim in pro.jvm
Sonarlint, по моему самый популярный, не?))
источник

Э

Эд in pro.jvm
Vadim
Ребят, у меня тут линтер ругается на то, что я передаю Entity в RequestBody и просит заменить его на POJO или DTO. Может кто пояснить зачем это и почему? Заранее спасибо!
Проблема в том, что не соблюдается Single Responsibility.
источник

V

Vadim in pro.jvm
Да нет, не в этом дело
источник

V

Vadim in pro.jvm
Линтер пишет о том, что это может использоваться потом как "атака" на сервис
источник

V

Vadim in pro.jvm
Якобы все совсем плохо
источник

VG

Vladislav Gerasimov in pro.jvm
Vadim
Ребят, у меня тут линтер ругается на то, что я передаю Entity в RequestBody и просит заменить его на POJO или DTO. Может кто пояснить зачем это и почему? Заранее спасибо!
Ну вообще для взаимодействия между системами DTO предназначены, а вы сразу используете Entity для нескольких целей, получается. Все равно это плохо
источник

ch

central hardware in pro.jvm
Vadim
Линтер пишет о том, что это может использоваться потом как "атака" на сервис
Ну так раскрытие схемы бд как минимум
источник

V

Vlad in pro.jvm
Vladislav Gerasimov
Ну вообще для взаимодействия между системами DTO предназначены, а вы сразу используете Entity для нескольких целей, получается. Все равно это плохо
Всегда в этом ключе смущает наличие spring-data-rest
источник

V

Vadim in pro.jvm
А, все понял. То есть по факту в этом ничего смертельного нет, но я раскрываю столбцы своей БД, да и в принципе Entity подразумевает  "объект из БД", а для подобных операций, лучше отдать эти обязанности DTO или POJO, да ?
источник

РН

Роман Нагаев... in pro.jvm
Vadim
Ребят, у меня тут линтер ругается на то, что я передаю Entity в RequestBody и просит заменить его на POJO или DTO. Может кто пояснить зачем это и почему? Заранее спасибо!
вот пара основных причин которые пришли в голову:
1) разделить модель базы от модели апи и/или логики
2) избавиться от нежелательных эффектов гибера
источник

Э

Эд in pro.jvm
Vadim
А, все понял. То есть по факту в этом ничего смертельного нет, но я раскрываю столбцы своей БД, да и в принципе Entity подразумевает  "объект из БД", а для подобных операций, лучше отдать эти обязанности DTO или POJO, да ?
Плохо потому, что прийдет момент, когда тебе нужно будет изменить entity для потребностей, связанных с бд. А она используется ещё в других местах. Изменение может поломать что-то в этих других местах
источник

V

Vadim in pro.jvm
Ага, все очень ясно объяснили. Всем спасибо!
источник

D

Dima in pro.jvm
Vadim
Ага, все очень ясно объяснили. Всем спасибо!
mapstruct.org посмотри
источник

D

Dima in pro.jvm
на тему маппинга
источник

VG

Vladislav Gerasimov in pro.jvm
Vlad
Всегда в этом ключе смущает наличие spring-data-rest
Как по мне, так единственное его применение - очень скорый MVP, потому что у более-менее прод такое нельзя пускать
источник