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. JS的文本编辑框jwysiwyg-0.6

    一款轻量的用js写的文本编辑框.

  2. 华为OJ平台——整形数组合并

    题目描述: 将两个整型数组按照升序合并,并且过滤掉重复数组元素 输入: 输入说明,按下列顺序输入: 1 输入第一个数组的个数 2 输入第一个数组的数值 3 输入第二个数组的个数 4 输入第二个数组的数 ...

  3. php文件大小单位转换GB MB KB

    private function formatBytes($size){ $units = array('字节','K','M','G','T'); $i = 0; for( ; $size>= ...

  4. Android内存泄漏分析

    周末去上海参加了安卓巴士组织的技术论坛,去了才发现自己基础很渣..... 其中提到了android的内存泄漏的问题,回来马上度娘(虽说度娘很渣),整理如下: 一.单例造成的内存泄漏 因为单例的静态特性 ...

  5. [drp 7]转发和重定向的区别

    导读:类似于response.sendRedirect(request.getContextPath()+"/servlet/item/SearchItemServlet");和r ...

  6. 在C++中调用DLL中的函数 (2)

    应用程序使用DLL可以采用两种方式: 一种是隐式链接,另一种是显式链接.在使用DLL之前首先要知道DLL中函数的结构信息. Visual C++6.0在VC\bin目录下提供了一个名为Dumpbin. ...

  7. C++三种内存分配方式

    从静态存储区域分配:内存在程序编译的时候就已经分配好,这块内存在程序的整个运行期间都存在.例如全局变量,static变量.静态分配的区域的生命期是整个软件运行期,就是说从软件运行开始到软件终止退出.只 ...

  8. iOS常用插件

    iOS常用插件总结:http://blog.csdn.net/oik_ios/article/details/50251191http://www.jianshu.com/p/d24eea8b405a ...

  9. poj1008_Maya_Calendar

    历法的转换. #include <stdio.h> #include <math.h> #include <string.h> ][]={ "pop&qu ...

  10. ubuntu下使用apt-get install安装的软件在哪个目录

    形如 apt-get install apps 这样的命令,一般会将下载文件放在 /var/cache/apt/archives目录下,然后安装. 如果不及时清理,这个目录所占空间会越来越大,幸运的是 ...