- 1、本文档共17页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
人人都会OSGI--实例讲解OSGI开发
人人都会OSGI--实例讲解OSGI开发?OSGI(Open Services Gateway Initiative),或者通俗点说JAVA动态模块系统,定义了一套模块应用开发的框架。OSGI容器实现方案如Knopflerfish, Equinox, and Apache Felix允许你把你的应用分成多个功能模块,这样通过依赖管理这些功能会更加方便。和Servlet和EJB规范类似,OSGI规范包含两大块:一个OSGI容器需要实现的服务集合;一种OSGI容器和应用之间通信的机制。开发 OSGI平台意味着你需要使用OSGI API编写你的应用,然后将其部署到OSGI容器中。从开发者的视角来看,OSGI提供以下优势:?你可以动态地安装、卸载、启动、停止不同的应用模块,而不需要重启容器。你的应用可以在同一时刻跑多个同一个模块的实例。OSGI在SOA领域提供成熟的解决方案,包括嵌入式,移动设备和富客户端应用等。?OK,你已经有个Servlet容器来做web 应用,有了EJB容器来做事务处理,你可能在想为什么你还需要一个新的容器?简单点说,OSGI容器被设计专门用来开发可分解为功能模块的复杂的Java应用。?企业应用领域的OSGI?OSGI规范最初是由OSGI联盟在1999年3月发起。它的主要目的是成为向网络设备传输服务管理的开放规范。核心思想是一旦你向网络设备中添加 了一个OSGI服务平台,你可以在网络中的任意位置管理该设备上的服务组件。这些服务组件可以任意安装,更新或移除而不会对设备产生影响。多年来,OSGI技术只出现在嵌入式系统和网络设备市场。现在,Eclipse使OSGI在企业开发领域焕发出新的光彩。?OSGI受到越来越广泛的支持?2003年,Eclipse开发团队开始寻找一种使eclipse成为一种功能更动态、工具更模块化的富客户端平台。最终,他们的目光锁定在OSGI框架上。Eclipse3.0,2004年6月发布,是基于OSGI技术搭建的首个Eclipse版本。?几乎所有企业应用服务提供商支持或计划支持OSGI。Spring框架同样支持OSGI,通过Spring DM(Spring Dynamic Modules for OSGI Service Platforms)项目,可以让我们在Spring上更方便的应用OSGI。??开源OSGI容器?从企业应用开发者的角度看,OSGI容器侵入性非常小,你可以方便地将其嵌入一个企业应用。举个例子来说,假设你在开发一个复杂的web应用。你希 望将这个应用分解成多个功能模块。一个View层模块,一个Model层模块,一个DAO模块。使用嵌入式OSGI容器来跨依赖地管理这些模块可以让你随 时更新你的DAO模块却不需要重启你的服务器。只要你的应用完全符合OSGI规范,它就可以在所有符合OSGI规范的容器内运行。现在,有三种流行的开源OSGI容器:?Equinox是OSGI Service Platform Release 4的一个实现。是Eclipse 模块化运行时的核心。Knopflerfish另一个选择。Apache Felix是Apache软件基金会赞助的一个OSGI容器?在这篇文章里我们使用Equinox作为我们的OSGI容器。??尝试开发一个Hello World bundle?在OSGI的领域,发布的软件是以bundle的形式出现。bundle由java class类和资源文件组成,向设备所有者提供功能,同时可以为其他的bundles提供服务。Eclipse对开发bundles提供了强大的支持。 Eclipse不仅仅提供创建bundles的功能,它还集成了Equinox这个OSGI容器,你可以在其上开发和调试OSGI组件。其实所有的 Eclipse插件都是使用Eclipse规范代码写的OSGI bundle。接下来,你将可以学到如何使用Eclipse IDE开发一个Hello world osgi bundle。?开始开发bundle?我们一步步的开始:??启动Eclipse,依次点 File -- New -- Project。选择Plug-in Project,next。输入Project Name项目名称,比如com.howard.sample.HelloWorld,Target Platform(目标平台)里的an OSGI framework,选择standard。剩下的保持默认,next。下个对话框也默认,next。然后选择Hello OSGI Bundle作为模版。Finish。Eclipse会飞快的为你创建Hello world bundle的模版代码。主要包含两个文件:Activator.java和MANIFEST.MF。?Activator.java的代码如下
您可能关注的文档
- 二叉排序树与平衡二叉树.doc
- 二叉排序树的建立、插入、删除和查找.doc
- 二叉树后序线索化.docx
- 二年级 看图写话秋天的图画.ppt
- 二十五项反措宣贯材料.doc
- 二年级品德与生活上册课件 多彩的课间活动.ppt
- 二手小区接管程序.doc
- 二氯甲烷萃取物的测定.ppt
- 二次型及其应用论文.doc
- 二端口网络电路分析教程.ppt
- 雷锋精神,生生不息——2025年学校3.5学雷锋月主题活动方案.docx
- 2025哪吒开学第一课 文稿.docx
- 2025年中小学“3.5”学雷锋活动月活动方案.doc
- 初中校长在家长会上发言讲话:别让溺爱毁了孩子的黄金三年.docx
- 山东省东营市利津县陈庄镇陈庄小学-2025春季小学班主任经验分享(一)【课件】.pptx
- 校长在教科研会上精彩讲话:没有无效教研!只有错误的方向!.docx
- 中小学校长在第二学期家委会上发言:凝聚家校力量,打造孩子美好未来.docx
- 高三一模总结会上,校长在高三教师会议上:讲话一模反思与高三教学的逆袭之道.docx
- 2025届湖南省长沙市长郡二十校联盟高三第二次预热演练语文试题.docx
- 广西邕衡教育·名校联盟2024_2025学年度2022级高三下学期开学考试语文试题.docx
最近下载
- 湘教版二年级下册音乐全册教案.docx
- SH/T 3613-2013-石油化工非金属管道工程施工技术规范.pdf
- 2024年北京社会管理职业学院单招英语题库及答案解析.docx
- 《大学物理教学课件》广工大:(改) 16-5麦克斯韦电磁场理论.ppt VIP
- 第5章 飞机燃油系统《航空器系统与动力装置》.pptx VIP
- 英语3分钟演讲PPT.ppt
- MIDIPLUS_X_Pro_mini_series英文使用说明书.pdf
- 2024年中考英语试题及答案 (1) .pdf VIP
- 酒店员工仪容仪表礼节礼貌培训.pptx VIP
- 2024年湘潭医卫职业技术学院高职单招职业技能测验历年参考题库(频考版)含答案解析.docx
文档评论(0)