[开发] 基于liferay portal的平台 开发企业级应用的优势

priam 2011-03-19
基于liferay portal的平台 开发企业级应用的优势

作者:方进   msn:lttlstn@hotmail.com
概述


Portal诞生就是为企业门户EIP系统准备的,在企业应用的集成,门户的开发具有很大的优势。

本篇文章不是描述使用liferay portal制作EIP.本文主要是描述portal在制作企业级应用上的优势和特点,我会给大家展示一种全新的软件开发模式,和对软件开发一种全新的理解。

先展示一下用基于liferay portal制作的一个企业级应用系统

预算系统,完全基于liferay portal的开发平台制作的应用系统。





以上这系统已经在全国范围内顺利实施。

技术体系


    基于struts,spring, hibernate。这样的技术体系对于人员招聘是一大优势,会java的人基本都会ssh。

开发流程

     基于数据建模体系,liferay portal对软件设计到实现的结合点就是service.xml,通过对service.xml文件的定义翻译出业务模型到数据模型模型的映射关系。

     Service.xml让我们做了什么工作呢?1.建立了业务模型的数据结构 2.建立查询关系 3.建立异常信息 4.定义引用服务接口。




通过service.xml文件可以生成一整套完整代码,基础代码的生成帮助提高软件代码的规范和效率,开发人员只需要关注业务部分代码开发就可以。

重用体系


概念


     基于liferay
portal开发是基于插件的方式,这是一种全新的开发方式,非常类似osgi,eclipse插件开发方式。每个系统可以是一个插件,也可以是每个功能
点是一个插件。通过插件的组合来定制整个系统。大家可能不理解软件系统不是开发出来的吗?答案:是配置,不是开发。我们的系统是靠定制出来的。举了例子邮
件系统,我们需要制作一个邮件系统的插件。如果以后我们在用到邮件系统,通过邮件系统的属性定义,就可以让邮件系统给不同的企业使用,邮件系统只是给客户
提供软件功能很小的一个服务单位。下面以邮件举例。

以下是一个邮件portal的截图








通过自己配置帐号信息,来使用邮件的功能。

页面定制


企业应用所有界面都是在系统中配置出来如下图




布局定制


每个新增加的界面可以选择一种布局,默认有几种布局方式,也可以扩展我们自己的布局。下面的截图是默认的几种布局方式




皮肤定制


可以为每个页面定义一个皮肤和颜色




功能布局


把制作好的功能添加到页面中





下图是添加好的邮件portlet的效果




通过在系统里做页面的添加,功能的添加,一个给用户定制的系统就这么诞生了。



包容体系


       Portal是一个标准,是一个容器,只要是符合标准的portlet都可以在容器里面运行。这个提供良好的扩展性,可以从两个方面去理解他1.对现有软件功能性上的包容。2对在现有软件界面性上的包容

功能


       
软件功能性上的包容我们如何理解?举个例子以工作流为例,如果想把工作流集成到系统里,并且能随平台的升级一同升级,可以在平台上进行热插拔。这个问
题可以这么解决:把jbpm通过插件的方式集成到我们平台。一旦完成该功能,就在可以在所有相关的项目进行配置应用。

        以下是工作流web插件的截图:











作为做一种功能的集成,我们很方便能集成drools,bi,report等等。

界面


软件界面上的包容如何理解?现有前台技术没有太多可以选择,liferay portal在6.0版后前台使用yui。
市面上可以选择的解决方案不多extjs,dojo,jquery,yui3.我们可以任意的选择前台技术来展示应用系统。下图是使用extjs4.0预
览版4做的展示效果。我特意保留了liferay的图标。








小结


     基于liferay portal平台开发企业级用,有几点优势

1.    加快软件开发进度

2.    让软件的重用性达到一个前所未有的高度

3.    非常弹性的定制化功能,客户的想法变得有多快,我们变化的就有多快。

4.    一个信息储存,多种的展现方式。

5.    和企业现有技术能完美融合,技术解耦。

6.   只专注于企业的业务开发

这篇文章只是展示了liferayportal开发企业级应有优势冰山的一角,更多的信息大家可以在google中搜索。

附加:

  Liferay有完善的权限管理和组织结构管理,本文不加描述



washheart163.com 2011-03-22
好多图看不到啊
priam 2011-03-22
我在blog里上传了word文档,priam.iteye.com
Global site tag (gtag.js) - Google Analytics