2013-08-12 8 views
0

У меня есть два компонента в веб-приложении Java EE. Эти компоненты отличаются только от двух до трех полей. Оба выполняют те же действия, то есть сохраняют данные в базе данных и отправляют почту. Что было бы лучшим способом их реализации? В настоящее время у меня есть два варианта:Компонентное повторное использование общего модуля

  1. имеет общую VO, пройти базовый класс для обслуживания и дао слой, а затем на основе типа объекта сделать необходимые действия в классе DAO как данные обоих модули сидят в два разные таблицы.

  2. Имеют общие интерфейсы, общие, но отдельные службы и DAO.

Может ли кто-нибудь сообщить мне, что лучше, и почему, или если есть лучший способ?

+0

Что такое модуль? Это не термин Java. – chrylis

+0

Это может зависеть от того, каковы различия. Если это только поля и таблицы, вы можете использовать два разных объекта с общим суперклассифицированным классом и общим сервисом/дао. – Thomas

+0

Отвечает ли мой ответ на http://stackoverflow.com/questions/18134502/correct-pattern-for-two-classes-that-act-similar-and-have-duplicate-code/18134611#18134611? –

ответ

0

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

0

Создание общего модуля содержит interface всех распространенных типов поведения, таких как API и отдельный проект для их реализации. вы можете использовать maven, и лучше создать jar из этого базового модуля и при условии, что в качестве зависимости от проекта реализации.

Смежные вопросы