Выбор технического решения для обработки и обработки данных для проекта Liferay - PullRequest
0 голосов
/ 03 октября 2011

Я ищу новый проект, основанный на Liferay.

Он опирается на систему, для которой потребуется собственная модель данных и определенная гибкость и гибкость в управлении данными и их визуализации.

Вот мои варианты:

  • Использование полей Liferay Expando и определение их собственных моделей данных. Я должен сделать весь слой представления.
  • Использование Liferay ECMS с добавлением патчей, создающих структуры и хуки, которые позволяют мне определять модели данных Master - Detail. Это значительно упрощает просмотр (шаблоны скорости), но, возможно, является наиболее «грязным» способом.
  • Создание слоя данных и доступа к сервисам с помощью Hibernate и Spring. (используя Service Factory, например).
  • Liferay Service Builder будет аналогичен варианту создания платформы с помощью Hibernate и Spring.
  • Системы генерации CRUD, такие как OpenXava или ваш XMLPortletFactory

А теперь мой вопрос, что вы посоветуете? Какие преимущества или недостатки, по вашему мнению, обеспечат тот или иной вариант?

Заранее спасибо.

1 Ответ

1 голос
/ 03 октября 2011

Я не могу говорить о других системах поколения CRUD, но могу рассказать вам о подходах Liferay.

Я бы выбрал гибридный подход.

Сначала я бы создал требуемыймодели данных, насколько я могу, с текущими требованиями в Liferay Service Builder и поддерживать их там в максимально возможной степени.Это потребует перестройки и повторного развертывания вашего плагина каждый раз, когда вы меняете модель данных, но значительно повышает производительность по сравнению со всеми другими упомянутыми вами подходами Liferay.В этом отношении Service Builder гораздо более жесткий и не может быть изменен с помощью графического интерфейса.

Однако в случае, если по какой-то причине вы не можете использовать Service Builder для переопределения своих моделей данных, и вам необходимо изменить некоторые аспекты этогочерез графический интерфейс вы также можете использовать Expandos для расширения моделей, созданных с помощью Service Builder.Итак, это лучшее из обоих миров.

С другой стороны, использование ECMS было бы специализированным случаем, и я бы использовал этот подход, только если есть определенное требование, которому он удовлетворяет (например, интеграция с ECMS).

С учетом сказанного, Liferay предоставляет вам множество различных способов создания вашего приложения.В конечном итоге это зависит от того, как вы собираетесь использовать свое приложение.

...