首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 软件管理 > 软件架构设计 >

Liferay Portal 六学习笔记4:Liferay开发模式介绍

2012-08-30 
Liferay Portal 6学习笔记4:Liferay开发模式介绍本篇主要介绍liferay的开发模式?liferay推荐两种开发模式?

Liferay Portal 6学习笔记4:Liferay开发模式介绍

本篇主要介绍liferay的开发模式

?

liferay推荐两种开发模式

?

一、插件模式开发。

二、扩展环境开发。

?

插件模式开发

在上一篇文章里面通过liferay ide建立的那个工程就是插件模式开发。什么是插件模式开发呢?简单说就是提供一个独立的war包放到应用服务器里面,如果我们打开%tomcat_home%/webapps就会看至上一篇中建立的工程LiferayStudy-portlet,同时还看到许多其他的文件夹,如下:


Liferay Portal 六学习笔记4:Liferay开发模式介绍
?这些文件夹是liferay里面自带的一些插件包,如chat、google map等。

?

扩展环境开发

Liferay 6以后的ext模式开发有了变动,在Liferay 6之前的版本中扩展环境叫做Extension Environment,从liferay 6以后这种模式叫做ext plugin。(其实现在的开发模式可以称为一种了,都可以统称为插件开发,不过这两种模式有很大区别,还是分开来比较好)

?

ext plugin(扩展插件)是以前使用Extension Enviroment(扩展环境)的升级版本,用来替代以前的ext开发模式。现在的ext plugin开发可以称为一种轻量级的扩展环境,现在做扩展环境只需要使用不到10M大小liferay-plugins-sdk,而早期版本的开发要么需要自己下载Ext环境,要么需要自己从源代码里面编译一个扩展环境出来。

?

虽然现在的ext plugin使用的是不到10M大小的SDK,但是开发方法和运行原理和之前使用的Extension Enviroment是一样的。

看一下liferay ext plugin模式在Eclipse里面的工程目录


Liferay Portal 六学习笔记4:Liferay开发模式介绍

在这里个工程里面我们写的java类文件一般在docroot/WEB-INF/ext-impl/src目录下面,jsp文件一般在doroot/ext-web/docroot目录下面。

?

文件夹ext-impl、ext-lib、ext-service、ext-util-bridges 、ext-util-java、 ext-util-taglib这些在部署的时候会被打成jar包,ext-web/dcroot对应的就是tomcat下面的root目录。

?

基本上和普通的java web工程没有太大的区别。

?

两种模式比较

插件模式优点

插件模式开的是独立的web工程,优点非常明显,只要遵循JSR,就可以任何Web方式开发,对liferay基本上没有依赖,耦合很低,可以非常方便部署、开发、迁移。便于应对以后的Liferay版本升级,基本上不存在啥成本,copy相应的war包过去即可。

?

插件模式缺点

?

在优点明显的同时,缺点也很明显。每个都是独立的war包,代码之间的共享访问很难,同时不能调用Liferay的API。

?

扩展模式优缺点

扩展模式和插件模式刚好相反,扩展模式的优点就是插件模式的缺点;扩展模式的缺点就是插件模式的优点。

?

小结

?

liferay的开发模式大概介绍完了,在实际开发中两种模式是可以同时进行的,对于不同的需要进行不同的开发模式,对于一些通过工具类的功能实现可以通过插件模式开发,对于需要调用liferay API的功能进行扩展模式开发。

?

其实在实际中还有第三种开发方式:直接在源码上面进行开发修改,不过这种方式并不推荐,如果项目小还好,项目大时将来很难升级到新版本的Liferay上面。Liferay还存在不少的bug,如果不能及时的升级新版本,就会将liferay的bug转移到了项目本身上来。

热点排行