《OSGI实战》:第三章 生命周期(一)

在接下来的章节中,我们将更进一步地了解什么是生命周期管理以及为何要关注它,随后介绍OSGi bundle生命周期的定义。在后续几节里你将学到管理bundle生命周期的API。本章将借助一个简单的OSGi shell示例以及一个拥有生命周期的绘图程序版本,帮助读者掌握所有知识。


《OSGI实战》:第三章 生命周期(二)

到目前为止,我们并没有为shell实现太多的功能——只是创建了激活器并执行了关闭和启动操作。在本节中,我们将向读者展示如何实现更多的功能。通过一个简单的命令模式提供可执行的操作,你可以交互式地安装、启动、停止、更新以及卸载bundle。我们甚至还将为shell增加永久的历史记录,记录过去执行的命令。


《OSGI实战》:第三章 生命周期(三)

在OSGi中,生命周期层与模块层之间存在一种双向关系。生命周期层会对安装到框架之中的bundle进行管理,显然这会影响到模块层对bundle依赖的解析。模块层使用bundle元数据,确保bundle在被使用前它的所有所依赖都已满足。使用bundle时,模块层与生命周期层之间的这种共生关系,会产生一种类似先有鸡还是先有蛋的情景。


OSGI进阶:序

此篇文档适合具备OSGi基础概念或已阅读《OSGi实战》的读者 阅读,尤其是希望将 OSGi应用至实际的商业项目/产品的读者。 阅读此篇 Opendoc 的读者应具备以下知识: 如何在 Eclipse 中搭建 OSGi 应用开发环境; 如何部署 OSGi 应用; 对于 OSGi 应用开发有大致的了解(如 DS 怎么使用)。


OSGI进阶:第二章 基于 OSGi 的留言板

此留言板主要为展示基于 OSGi 的 B/S 系统的通用设计和实现方法,因此功能方面只是一些基础功能的需求: 分页浏览留言 进入留言板的首页时,以每页 20 条的列表的方式列出系统中所有的留言,并提供下一页、上一页、首页和末页的链接导航; 留言列表按留言时间顺序显示,新的留言显示在前; 每条留言显示的内容分别为:留言内容、留言人和留言时间。


OSGI进阶:第三章 与流行的 Java B/S 体系架构进行集成(一)

在看完了上面的章节后,大家可能会想:OK,OSGi 是还不错,也大概知道了怎么样基于它去设计实际的项目,但对于 Java B/S 系统而言,OSGi 怎么和目前流行的体系架构集成呢,这恐怕是大部分读者为关注的问题。如果能解决这个问题的话,我想大部分人都会考虑在新的项目/产品中去使用 OSGi,毕竟 OSGi 带来的好处是非常明显的,在 本章节中,将和大家来一起搭建一个基于OSGi的Hibernate+Spring+Webwork的脚手架。


OSGI进阶:第三章 与流行的 Java B/S 体系架构进行集成(二)

要集成 Webwork,要解决的问题和与 Hibernate 的集成基本类似,集中在如下三个方面: Webwork 要求所有的 Action 配置文件都需要在其统一的 xwork.xml 做 include 配置,而基于 OSGi 后需要达到的目标是:各模块维护自己的 xwork.xml,以某种方式绑定到 webwork 上去


OSGI进阶:第四章 基于OSGi搭建分布式系统

OSGi 规范是基于同一 VM 而设计的,因此并无对于分布式通讯的支持,分布式的通讯有很多种实现方法,如采用 RMI、基于 MQ、SOA 等方式,SOA 无疑是目前分布式领域中为流行的架构体系,在本章节中就以一个实例来分析基于 OSGi 如何搭建一个实现像 SOA 这样的脚手架。


OSGI进阶:第五章 将原系统重构为基于OSGi的系统

在看完以上的章节后,希望能让大家在新的项目/产品无所顾忌的使用 OSGi,但对于已存在的项目/产品而言,怎么办呢,因为像产品而言的话,通常都是经历过一段很长时间的发展的,不可能抛弃以前所有的努力,因此还得有将原系统重构为基于 OSGi 的系统的方法。 在这个章节中将把一个传统的基于hibernate+spring+webwork搭建的留言板系统重构为可部署至OSGi框架中的系统,重构时的原则是尽量不去修改原代码,基于BND(Bundle Tool) 直接创建符合OSGi规范的Bundle进行部署,从而实现重构。


OSGI进阶:第六章 OSGi的设计模式

所谓树状设计模式就是以树的方式来设计整个系统,由于 OSGi 在模块的规范化、动态性、扩展性上的良好的支持,使得以树的方式来设计整个系统变得可行。 在设计留言板系统时我们已经展示了如何以树状的方式来进行设计,树状设计模式强调系统像树一样慢慢的长大,在设计时涉及的元素主要是根、枝、叶三要素。</br> 面向服务本身已经是如今为红火的名词之一,而由于 OSGi 本身重要的设计思想就是面向服务的组件模型,因此基于 OSGi 而构建的系统自然就应该是面向服务式的。


最受欢迎的文章

最新评论