接触osgi也没多久,本来不打算写这个模块的,网上现在osgi的教程还不多,在开发过程中遇到问题解决的过程实在痛苦,有时候一个很小的问题可能会折腾好几天,我想很多刚接触osgi开发的也和我有同样的感受,所以还是决定把开发过程中遇到的一些问题和解决方法写出来,希望会对初学者有点帮助,欢迎交流,共同进步。
用osgi在开始的设计阶段很重要,因为第一次接触osgi,前期的设计变动比较大,代码重构了很多次。OSGI搭建系统带来的是架构级别的改变,模块化设计、面向服务的组件模型设计以及动态性的设计三个方面,也只有在把握好了这三方面才能充分的发挥基于OSGI搭建系统的优势,否则也许会给项目带来更大的痛苦。
后面会做个demo演示osgi-ds,日志,读取properties文件,spring-dm,普通jar包osgi化,数据库连接,事务配置,控制台命令,非eclipse环境启动配置。
每个demo的源代码在最后都有提供下载!
Osgi 背景和理论基础书籍
OSGi原理与最佳实践(精选版) http://download.csdn.net/detail/ferry_passion/4333062
OSGI实战 http://download.csdn.net/detail/ferry_passion/4333068
OSGI进阶 http://download.csdn.net/detail/ferry_passion/4333072
Spring OSGi 入门 http://download.csdn.net/detail/ferry_passion/4333076
所有用到的jar包 http://download.csdn.net/detail/ferry_passion/4333084
1. 搭建target platform环境
2. 第一个plug-in项目
3. 自定义osgi控制台命令
4. Osgi DeclarativeServices
5. Spring-dm
6. 普通jar包osgi化
7. Osgi数据库连接
8. Osgi读取properties文件
9. osgi 日志
10. Osgi事务管理和对OracleSequence支持
11. 非eclipse环境启动Osgi配置
分享到:
相关推荐
3. **使用Declarative Services(DS)**:OSGI DS提供了一种声明式的方式来管理OSGI服务的生命周期,使得Spring的bean可以与OSGI服务无缝集成。 4. **动态依赖注入**:由于OSGI的动态性,服务可以在运行时添加或...
3. **SpringDM**: Spring Dynamic Modules (SpringDM) 将Spring框架的依赖注入和配置管理能力引入到OSGi环境中。模块可以通过Spring配置文件声明服务依赖,SpringDM会自动管理和注入服务。 总结来说,OSGi的服务...
4. **Spring DM (Spring OSGi)**:Spring DM是Spring框架的一个扩展,用于更好地支持OSGi环境。它提供了一种方式来声明和管理Spring bean以及它们的依赖,包括事务管理。 5. **AspectJ LTW(Load-Time Weaving)**...
Spring OSGi的依赖包通常包括Spring核心库、Spring DM(Dependency Manager,已被Spring OSGi取代)以及其他可能需要的OSGi框架库。这些依赖包确保了Spring OSGi功能的完整性和兼容性。 总的来说,Spring OSGi是...
DS(Declarative Service)方式是 OSGi 服务发布和获取的一种方式。这种方式的优点是通过配置发布获取服务,采用服务组件的延迟加载以及组件生命周期管理的方式来控制对于内存的占用以及启动的快速。但是,这种方式...
- **企业应用**:如Spring Dynamic Modules (Spring DM) 将OSGI与Spring框架结合,实现灵活的应用架构。 - **嵌入式系统**:如路由器、智能家居设备,利用OSGI的模块化特性,方便更新和维护。 - **开发工具**:...
1. **Spring DM(Dependency Management)**:是Spring对OSGi的支持,后来演变为Spring OSGi,提供了将Spring应用转换为OSGi服务的能力。 2. **Blueprint**:是Apache CXF项目中的一个子项目,提供了Spring XML配置...
- **Spring DM (Dependency Manager)**: Spring 对 OSGi 的早期支持,提供了基于 Spring 配置的 OSGi 服务管理。 ### 5. 开发和部署 - **开发工具**: 使用 Eclipse 或 IntelliJ IDEA 的 OSGi 插件,如 PDE 或 ...
在本文中,我们将深入探讨如何在OSGi环境中整合Spring-DM和Hibernate,以实现一个动态的、可扩展的持久化解决方案。Spring-DM(现在被称为Spring OSGi)是Spring框架在OSGi容器中的扩展,它允许我们充分利用OSGi的...
Gemini Blueprint与Equinox DS类似,但提供了更高级的功能,如类型安全的元数据和Spring DM兼容性。 3. `javax`:这可能包含了Java标准版(Java SE)的一些库,比如Servlet API或其他Java EE相关接口,这些接口可能...
1. 添加Spring DM支持库。 2. 配置Spring Bean。 3. 注册服务。 #### 十、OSGi与Hibernate框架的整合 OSGi也可以与Hibernate整合,实现持久层的管理和操作。 **步骤**: 1. 创建数据库表结构。 2. 定义Hibernate...
10. **企业应用集成**:OSGi在企业级应用中扮演重要角色,如Spring DM(现在是Apache Aries)和Pax Exam等项目,提供了与现有框架和工具的集成。 通过对《OSGi原理与实践》这本书源码的探索,读者将能够深入理解...
5. **Blueprint和DS(Declarative Services)**:Apache Karaf支持 Blueprint XML和Declarative Services,使得开发者可以声明式地定义服务及其依赖关系。 6. **热部署**:Karaf支持模块的热部署和热更新,这意味着...