为Liferay项目选择处理和处理数据的技术解决方案

为Liferay项目选择处理和处理数据的技术解决方案,liferay,liferay-velocity,Liferay,Liferay Velocity,我正在研究启动一个基于Liferay的新项目 它依赖于一个系统,该系统将需要自己的数据模型以及数据管理和可视化方面的某种灵活性和灵活性 以下是我的选择: 使用Liferay Expando字段并定义自己的数据模型。我必须做所有的视图层 使用Liferay ECM添加补丁,创建结构和挂钩,允许我定义数据模型主细节。它使查看问题(velocity模板)更容易,但可能是最“肮脏”的方式 使用Hibernate和Spring生成数据层并访问服务。(例如,使用服务工厂) Liferay Service

我正在研究启动一个基于Liferay的新项目

它依赖于一个系统,该系统将需要自己的数据模型以及数据管理和可视化方面的某种灵活性和灵活性

以下是我的选择:

  • 使用Liferay Expando字段并定义自己的数据模型。我必须做所有的视图层
  • 使用Liferay ECM添加补丁,创建结构和挂钩,允许我定义数据模型主细节。它使查看问题(velocity模板)更容易,但可能是最“肮脏”的方式
  • 使用Hibernate和Spring生成数据层并访问服务。(例如,使用服务工厂)
  • Liferay Service Builder类似于使用Hibernate和Spring创建平台的选项
  • CRUD生成系统,如OpenXava或XMLPortletFactory
现在我的问题是,你有什么建议?你认为这样或那样的选择有哪些优点或缺点


提前感谢。

我不能代表其他CRUD生成系统发言,但我可以告诉您有关Liferay的方法

我会采取混合方法

首先,我将尽可能利用Liferay Service Builder中的当前需求创建所需的数据模型,并尽可能多地在其中维护它们。这将要求您在每次更改数据模型时重新构建和重新部署插件,但与您提到的所有其他Liferay方法相比,这将大大提高性能。在这方面,ServiceBuilder更加严格,不能通过GUI进行更改

但是,如果由于某种原因,您无法使用Service Builder重新定义数据模型,并且需要通过GUI更改数据模型的某些方面,您还可以使用Expandos扩展使用Service Builder创建的模型。因此,这是两全其美的

另一种选择是,使用ECM将是一种特殊情况,我只会在它满足特定需求(如与ECM集成)时采用这种方法


话虽如此,Liferay为您提供了许多创建应用程序的不同方法。这最终取决于你将如何使用你的应用程序。

谢谢你,RP。我已经回答了大部分问题。我将尝试其中一种CRUD解决方案,但这仅仅是因为它允许我将ServiceBuilder与所创建的接口集成在一起​​速度让我拥有所需的力量和灵活性