spring的主要功能

spring框架提供了轻量级的容器和非侵入式的编程模型,这来自于其依赖注入、AOP和便携服务概念。

osgi的主要功能

osgi服务平台提供了动态的应用程序执行环境,支持模块(绑定)的安装、更新或者即时的删除。同时很好的支持了模块化和版本化。

spring dynamic modules的主要作用

spring dynamic modules (spring-dm) 便于将spring应用部署到osgi执行环境,并且可让spring应用利用到osgi框架提供的服务。spring-dm还使构建的spring应用开发为osgi应用变得更简化和更有生产效率。对于企业应用,结合spring-dm和osgi平台,可提供:

  1. 通过运行时模块之间的隔离,更易于分离应用程序的逻辑;
  2. 可在并发情况下部署一个模块(库)的多个版本;
  3. 可动态发现和使用系统其他模块提供的服务;
  4. 可在运行期间动态安装、更新和卸载模块;
  5. 使用spring框架实例化、配置、装配和包装模块中或者多个模块的组件;
  6. 给企业开发者使用osgi平台提供了简化的和熟悉的编程模型。

Spring Dynamic Modules 的前身是 Spring OSGi。

Spring Dynamic Modules,让写Spring应用可以部署在一个的OSGi执行环境,而且还可以充分利用所提供的服务的OSGi框架。 Spring的支持也使的OSGi开发的OSGi应用更简单和更富有成效的基础上,易用性和力量的Spring框架。为企业级应用,结合Spring Dynamic Modules和动态的 OSGi平台提供:

  • Better separation of application logic into modules, with runtime enforcement of module boundaries
  • The ability to deploy multiple versions of a module (or library) concurrently
  • The ability to dynamically discover and use services provided by other modules in the system
  • The ability to dynamically install, update and uninstall modules in a running system
  • Use of the Spring Framework to instantiate, configure, assemble, and decorate components within and across modules.
  • A simple and familiar programming model for enterprise developers to exploit the features of the OSGi platform.

使用spring dynamic modules的理由的更多相关文章

  1. Spring Dynamic Modules - DMserver

    spring dm server 官网:http://static.springsource.com/projects/dm-server/1.0.x/programmer-guide/htmlsin ...

  2. spring data jpa和spring data redis同时配置时,出现Multiple Spring Data modules found, entering strict repository configuration mode错误

    问题说明 data jpa和data redis同时配置时,出现Spring modules spring Spring Data Release Train <dependencyManage ...

  3. Spring Dynamic DataSource Routing

    Use AbstractRoutingDataSource to dynamicly switch datasources, see http://spring.io/blog/2007/01/23/ ...

  4. [spring]03_装配Bean

    3.1 JavaBean 3.1.1 JavaBean 是什么 JavaBean 是一种JAVA语言写成的可重用组件. 为写成JavaBean,类必须是具体的和公共的,并且具有无参数的构造器. Jav ...

  5. Spring学习笔记—Spring之旅

    1.Spring简介     Spring是一个开源框架,最早由Rod Johnson创建,并在<Expert One-on-One:J2EE Design and Development> ...

  6. spring揭密学习笔记(1) --spring的由来

    1.spring起源于在EJB暴露出各种严重问题的情况应运而生. Spring是于2003年兴起的一个轻量级的Java开发框架, Spring倡导一切从实际出发,以实用的态度来选择适合当前开发场景的解 ...

  7. OSGI企业应用开发(四)使用Blueprint整合Spring框架(一)

    上篇文章中介绍了如何使用独立的Equinox发行包搭建OSGI运行环境,而不是依赖与具体的Eclipse基础开发工具,本文开始介绍如何使用Blueprint將Spring框架整合到OSGI中. 一.开 ...

  8. spring主要产品

    Spring Framework   * Spring Web Flow   * Spring Web Services   * Spring Security (Acegi Security)   ...

  9. Spring学习总结(19)——Spring概念详解

    Spring是一个开源框架,Spring是于2003 年兴起的一个轻量级的Java 开发框架,由Rod Johnson创建.简单来说,Spring是一个分层的JavaSE/EEfull-stack(一 ...

随机推荐

  1. NOIP2004 虫食算

    描述 所谓虫食算,就是原先的算式中有一部分被虫子啃掉了,需要我们根据剩下的数字来判定被啃掉的字母.来看一个简单的例子:43#9865#045+ 8468#6633= 44445506678其中#号代表 ...

  2. Java基础——clone()方法浅析

    一.clone的概念 clone顾名思义就是复制, 在Java语言中, clone方法被对象调用,所以会复制对象.所谓的复制对象,首先要分配一个和源对象同样大小的空间,在这个空间中创建一个新的对象.那 ...

  3. 乱码!Eclipse 的控制台console必须用GBK编码。

    Eclipse 的控制台必须用GBK编码.所以条件1和条件4必须同时满足,否则运行的还是乱码. 条件1,Window  |  Preferences  |  Workspace  |  Text fi ...

  4. FreeBSD下查看各软件版本命令

    查看FreeBSD版本: uname -a root# uname -a FreeBSD power 8.1-RELEASE FreeBSD 8.1-RELEASE #0: Mon Jul 19 02 ...

  5. SQLServer、MySQL、Oracle语法差异小集锦

    一.差异集锦 在建表的时候,只有自增的语法不同. 下面给出3种数据库通用的建表与初始化测试语句: CREATE TABLE Country( Id int PRIMARY KEY, Name ) ); ...

  6. 【缓存】.net中Cache管理操作

    隐藏行号 复制代码 ? 这是一段程序代码. using System; using System.Web; using System.Web.Caching; using System.Collect ...

  7. windows live writer向cnblog发布文章设置(转)

    Windows Live Writer是非常不错的一个日志发布工具,支持本地写文章,非常方便将word 中内容,包括图片进行处理,有点感觉相见恨晚. Live Writer最新版本下载地址是什么? h ...

  8. gulp.spriteSmith使用

    var gulp = require('gulp'); var spritesmith = require('gulp.spritesmith'); gulp.task('sprite', funct ...

  9. 1.4Linux内核版本号的定义规则

    Linux内核版本号的组成: (1)主版本号: (2)次版本号: (3)修订版本号: (4)微调版本号: (5)为特定的Linux系统特别调校的描述: 例子:2.6.29.7-flykernel-12 ...

  10. 【Uploadify】远程上传图片到【七牛云存储】

    1.下载Uploadify版本3.2.1 2.下载七牛SDK 解压后将 qiniu 文件夹copy到uploadify文件夹下 3.修改uploadify.php文件 <?php $verify ...