У меня есть довольно сложное приложение, использующее POJO, и теперь вы можете перенести его на EJB3.1, чтобы его можно было развертывать онлайн, доступ через службы REST и извлечь выгоду из контейнерной среды (персистентность была самой важной, но транзакции были бы полезны слишком).Java EE 6 - шаблон постоянных доменных объектов - любые успехи?
Я был вдали от Java EE со дня J2EE, и изо всех сил пытаюсь разгадать «потерю» сущностей. Мне потребовалось некоторое время, чтобы понять, что Entities в EJB3.1 на самом деле не являются Beans в старом смысле ... :) Я прочитал несколько книг EJB3, включая «Руководство пользователя O'Reilly Enterprise JavaBeans 3.1», все из которых объясняют концепции и компоненты EJB3, но не параметры шаблона реализации.
В моих исследованиях и исследованиях, которые ищут шаблоны Java EE 6, я скорее воспринял подход Адама Бьена, в частности шаблон «Persistent Domain Objects» (PDO) (в его книге, но здесь тоже обобщенно: http://download.java.net/general/podcasts/real_world_java_ee_patterns.pdf), который появляется предлагая наименьшую сложность и большую синергию с моим текущим POJO-приложением. PDO также тесно взаимодействует с традиционными объектно-ориентированными философиями и подходами и действительно обращается ко мне.
Вместо того, чтобы отвечать на дебаты по PDO, мне интересно услышать от людей, которые ее внедрили, и что работало против ваших трудностей. В частности, я хотел бы узнать, как вы делали звонки от Объекты JPA отправляются в другие сервисы в контейнере (например, звонки на сессионные компоненты без состояния и т. Д.).
Я также хотел бы узнать, есть ли альтернативы шаблону PDO, которые позволяют мне поддерживать структуру приложения (используя полиморфизм и т. Д.), Не создавая сессионный компонент и объект JPA для каждого класса в моей модели. (Я не хочу делать это частично из-за огромных упражнений, необходимых для реорганизации всех тестов на единицу и интеграции, а отчасти потому, что, насколько я вижу, я в конечном итоге попытаюсь воспроизвести мои отношения между объектами 1toMany и т. Д. на моих сессионных бобах тоже кажется сумасшедшим).
Кто-нибудь есть опыт, чтобы поделиться - или, если вы хотите, чтобы указать на то, что я идиот, и пропустил нечто фундаментальное в Java EE 6, который будет «приветствовать» тоже :)
ТИА
Поздравляем с исправлением! Когда вы в состоянии, пожалуйста, отметьте свой ответ как «принятый», так что другой увидит, что на ваш вопрос был дан ответ, и вы сможете учиться на своем решении. Приветствия ~ –