В настоящее время я работаю в компании с 6-7 проектами Java EE. Это проекты с несколькими модульными maven, которые являются довольно большими и служат для разных целей. Таким образом, их модели очень разные, но по большей части данные хранятся в одной базе данных.Должны ли мы повторно использовать объекты JPA
Проблема, для меня, состоит в том, что, поскольку существует несколько областей перекрытия, они просто вводят существующие DAO на всю цепочку децентрации. Поэтому у меня есть
A-parent
-A-JPA
-A-DAO
B-Parent
-B-JPA
-B-DAO
-A-JPA
-B-DAO
и т. Д. И т. Д. Они действительно используют только 2 процента модели других проектов и соответствующие DAO.
Я пытаюсь отделить эти зависимости, просто дублируя требуемые объекты (и только включающие поля/сопоставления для вещей, которые действительно необходимы), так что один и тот же EJB не разворачивается 7 раз (или больше при кластеризации), но, видимо, я не делаю убедительных аргументов. Может ли кто-нибудь помочь мне указать статью с лучшими практиками для этой ситуации или помочь объяснить, как объяснить ему.
TLDR: Я хочу, чтобы каждый проект имел свой собственный набор объектов, даже если существует очень небольшое перекрытие, чтобы уменьшить зависимости между проектами, а также сделать так, чтобы мы не развертывали один и тот же EJB 7 раз. Мой босс считает, что нет ничего плохого в том, что они не связаны друг с другом. Могу ли я сделать это по этому поводу? Благодаря!
Это немного субъективно и зависит от множества факторов, касающихся вашего конкретного домена. Обычно, если у меня есть одна общая база данных, мне нужен один проект maven с dao/jpa, и только что-то, что требует доступа к базе данных, включает эту зависимость. Разделение забот и всех. Но опять же, это не лучший ответ для людей, которые не знакомы с вашим проектом, чтобы ответить за вас. –