人人都会osgi--实例讲解osgi开发

人人都会osgi--实例讲解osgi开发

ID:9311132

大小:188.96 KB

页数:17页

时间:2018-04-27

人人都会osgi--实例讲解osgi开发_第1页
人人都会osgi--实例讲解osgi开发_第2页
人人都会osgi--实例讲解osgi开发_第3页
人人都会osgi--实例讲解osgi开发_第4页
人人都会osgi--实例讲解osgi开发_第5页
资源描述:

《人人都会osgi--实例讲解osgi开发》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、人人都会OSGI--实例讲解OSGI开发 OSGI(OpenServicesGatewayInitiative),或者通俗点说JAVA动态模块系统,定义了一套模块应用开发的框架。OSGI容器实现方案如Knopflerfish,Equinox,andApacheFelix允许你把你的应用分成多个功能模块,这样通过依赖管理这些功能会更加方便。和Servlet和EJB规范类似,OSGI规范包含两大块:一个OSGI容器需要实现的服务集合;一种OSGI容器和应用之间通信的机制。开发OSGI平台意味着你需要使用OSGIAPI编

2、写你的应用,然后将其部署到OSGI容器中。从开发者的视角来看,OSGI提供以下优势: 1.你可以动态地安装、卸载、启动、停止不同的应用模块,而不需要重启容器。2.你的应用可以在同一时刻跑多个同一个模块的实例。3.OSGI在SOA领域提供成熟的解决方案,包括嵌入式,移动设备和富客户端应用等。 OK,你已经有个Servlet容器来做web应用,有了EJB容器来做事务处理,你可能在想为什么你还需要一个新的容器?简单点说,OSGI容器被设计专门用来开发可分解为功能模块的复杂的Java应用。 企业应用领域的OSGI OSGI

3、规范最初是由OSGI联盟在1999年3月发起。它的主要目的是成为向网络设备传输服务管理的开放规范。核心思想是一旦你向网络设备中添加了一个OSGI服务平台,你可以在网络中的任意位置管理该设备上的服务组件。这些服务组件可以任意安装,更新或移除而不会对设备产生影响。多年来,OSGI技术只出现在嵌入式系统和网络设备市场。现在,Eclipse使OSGI在企业开发领域焕发出新的光彩。 OSGI受到越来越广泛的支持 2003年,Eclipse开发团队开始寻找一种使eclipse成为一种功能更动态、工具更模块化的富客户端平台。最终

4、,他们的目光锁定在OSGI框架上。Eclipse3.0,2004年6月发布,是基于OSGI技术搭建的首个Eclipse版本。 几乎所有企业应用服务提供商支持或计划支持OSGI。Spring框架同样支持OSGI,通过SpringDM(SpringDynamicModulesforOSGIServicePlatforms)项目,可以让我们在Spring上更方便的应用OSGI。  开源OSGI容器 从企业应用开发者的角度看,OSGI容器侵入性非常小,你可以方便地将其嵌入一个企业应用。举个例子来说,假设你在开发一个复杂的w

5、eb应用。你希望将这个应用分解成多个功能模块。一个View层模块,一个Model层模块,一个DAO模块。使用嵌入式OSGI容器来跨依赖地管理这些模块可以让你随时更新你的DAO模块却不需要重启你的服务器。只要你的应用完全符合OSGI规范,它就可以在所有符合OSGI规范的容器内运行。现在,有三种流行的开源OSGI容器: 1.Equinox是OSGIServicePlatformRelease4的一个实现。是Eclipse模块化运行时的核心。2.Knopflerfish另一个选择。3.ApacheFelix是Apache

6、软件基金会赞助的一个OSGI容器 在这篇文章里我们使用Equinox作为我们的OSGI容器。  尝试开发一个HelloWorldbundle 在OSGI的领域,发布的软件是以bundle的形式出现。bundle由javaclass类和资源文件组成,向设备所有者提供功能,同时可以为其他的bundles提供服务。Eclipse对开发bundles提供了强大的支持。Eclipse不仅仅提供创建bundles的功能,它还集成了Equinox这个OSGI容器,你可以在其上开发和调试OSGI组件。其实所有的Eclipse插件都

7、是使用Eclipse规范代码写的OSGIbundle。接下来,你将可以学到如何使用EclipseIDE开发一个Helloworldosgibundle。 开始开发bundle 我们一步步的开始:  1.启动Eclipse,依次点File-->New-->Project。2.选择Plug-inProject,next。3.输入ProjectName项目名称,比如com.howard.sample.HelloWorld,TargetPlatform(目标平台)里的anOSGIframework,选择standard。4

8、.剩下的保持默认,next。5.下个对话框也默认,next。6.然后选择HelloOSGIBundle作为模版。Finish。Eclipse会飞快的为你创建Helloworldbundle的模版代码。主要包含两个文件:Activator.java和MANIFEST.MF。 Activator.java的代码如下所示: Java代码 1.import org.

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。