`
mizhao1984
  • 浏览: 91667 次
  • 性别: Icon_minigender_1
  • 来自: 西安
社区版块
存档分类
最新评论

osgi中spring-DM的用法

阅读更多

准备工作:下载spring-DM以来的包,并以插件的形式导入到工程中

1.创建一个plug-in project:UserInterface用于接口编写

 

public interface UserInterface {
    public void addUserInfo(UserInfo userInfo);

}

 

public class UserInfo {
 private int id;
 private String username;
 private String password;

 public int getId() {
  return id;
 }

 public void setId(int id) {
  this.id = id;
 }

 public String getUsername() {
  return username;
 }

 public void setUsername(String username) {
  this.username = username;
 }

 public String getPassword() {
  return password;
 }

 public void setPassword(String password) {
  this.password = password;
 }

}

MANIFEST.MF中将方法所在的包导出

 

2.创建一个plug-in project:UserImpl用于接口实现编写

MANIFEST.MF中将1导出的包导入

public class UserImpl implements UserInterface{
 
 public static final Log log = LogFactory.getLog(UserImpl.class);

 @Override
 public void addUserInfo(UserInfo userInfo) {
  log.info("addUserInfo excu...");
 }

}

在META-INF下创建文件夹spring:

在spring文件夹下新建:

bean.xml:

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://www.springframework.org/schema/beans
         http://www.springframework.org/schema/beans/spring-beans.xsd" default-autowire="byName">
      <bean id="userImpl" class="com.oohla.service.impl.UserImpl"></bean>
</beans>

services-public-cxf.xml:

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xmlns:osgi="http://www.springframework.org/schema/osgi"
  xsi:schemaLocation="http://www.springframework.org/schema/beans
         http://www.springframework.org/schema/beans/spring-beans.xsd
                      http://www.springframework.org/schema/osgi
                      http://www.springframework.org/schema/osgi/spring-osgi.xsd" default-autowire="byName">

    <osgi:service id="userInterface" ref="userImpl" interface="com.oohla.service.UserInterface"></osgi:service>
</beans>

 

3.创建一个plug-in project:Test用于测试接口

MANIFEST.MF中将1导出的包导入

测试类:

public class Test {
 
 private UserInterface userInterface;

 public UserInterface getUserInterface() {
  return userInterface;
 }

 public void setUserInterface(UserInterface userInterface) {
  this.userInterface = userInterface;
 }

 public void setUser(UserInterface userInterface) {
  this.userInterface = userInterface;
 }
 
 public void addUser(){
  UserInfo userInfo = new UserInfo();
  userInfo.setId(1);
  userInfo.setUsername("mz");
  userInfo.setPassword("123");
  System.out.println("Test addUser...");
  userInterface.addUserInfo(userInfo);
 }

}

在META-INF下创建文件夹spring:

在spring文件夹下新建:

beans.xml:

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://www.springframework.org/schema/beans
         http://www.springframework.org/schema/beans/spring-beans.xsd" default-autowire="byName">
      <!-- 启动通话监听任务 -->
      <bean id="test" class="com.oohla.test.Test" init-method="addUser">
          <property name="userInterface" ref="userInterface"></property>
      </bean>
</beans>

services-reference-cxf.xml:

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xmlns:osgi="http://www.springframework.org/schema/osgi"
  xsi:schemaLocation="http://www.springframework.org/schema/beans
         http://www.springframework.org/schema/beans/spring-beans.xsd
                      http://www.springframework.org/schema/osgi
                      http://www.springframework.org/schema/osgi/spring-osgi.xsd" default-autowire="byName">
    <osgi:reference id="userInterface" interface="com.oohla.service.UserInterface"></osgi:reference>                   
</beans>

分享到:
评论

相关推荐

    spring-osgi-1.2.0-rc1-with-dependencies.zip

    它提供了一种将Spring容器与OSGi服务层集成的方法,使得开发者可以使用Spring的IoC(控制反转)和AOP(面向切面编程)特性来管理OSGi服务。 3. **1.2.0-rc1版本** "spring-osgi-1.2.0-rc1"是Spring OSGi的一个早期...

    spring-dm-osgi整合jar包

    Spring DM的主要目标是简化OSGi服务的生命周期管理和配置,使得开发者能够像在非OSGi环境中一样轻松地使用Spring。 OSGi是一种基于Java的模块化系统,它定义了一个标准的框架,用于创建、部署和管理模块化应用程序...

    OSGi与Spring:Spring DM开发

    - 启动Eclipse IDE,选择一个用于存放项目的空文件夹作为工作空间,例如`C:\sample\springdm`。 - Eclipse 3.3版本内嵌了Equinox 3.3 OSGi容器,这为开发和调试OSGi模块提供了便利。 **4. 导入Spring DM JAR文件*...

    spring-osgi-1.2.1.rar

    Spring OSGi是Spring框架与OSGi(Open Service Gateway Initiative)规范相结合的产物,它允许在OSGi容器中使用和管理Spring应用。OSGi是一种Java模块化系统,它提供了动态部署、版本控制和依赖管理等功能,极大地...

    基于OSGi和Spring开发Web应用.doc

    在基于 OSGi 和 Spring 的 Web 应用开发中,我们可以使用 Spring-DM 来实现模块化部署和管理。Spring-DM 是 Spring 开发组织在 2008 年发布的,将 OSGi 和 Spring 结合的第一个版本。dm Server 是一个完全模块化部署...

    spring-dm junit

    总结来说,"spring-dm junit"的主题涵盖了在OSGi环境中使用Spring DM开发模块化应用时,如何利用JUnit进行单元测试和确保代码质量。理解和熟练掌握这些知识,对于在OSGi平台上的高效、可靠的软件开发至关重要。

    未来10年:OSGi、Spring_DM

    最后,书中还介绍了如何使用SpringSource dm Server来管理和部署OSGi应用,包括它的下载与安装、使用方法以及性能调优等内容。 综上所述,《未来10年:OSGi、Spring_DM》这本书不仅系统地阐述了OSGi及其在企业应用...

    spring-dm-reference

    - **将 Spring Bean 注册为 OSGi 服务**:Spring DM 支持将 ApplicationContext 中的 Bean 导出为 OSGi 服务,以便其他 Bundle 可以使用。 - **控制导出服务的接口集**:提供了机制来指定 Bean 作为服务导出时所暴露...

    基于OSGi和Spring开发Web应用

    Spring-DM,即Spring Dynamic Modules,是Spring官方在2008年推出的项目,旨在将Spring框架与OSGi模块化平台相结合,为Java开发者提供了一套全面的工具和API,以支持在OSGi环境中开发、部署和管理Spring应用程序。...

    SpringDM笔记7-开发SpringDM Bundle

    SpringDM提供了一种在OSGi容器中使用Spring IoC(Inversion of Control)和AOP(Aspect-Oriented Programming)的方法。 在本笔记中,我们将深入探讨如何开发SpringDM Bundle。首先,我们需要理解OSGi的基本概念,...

    SPRING DM 参考手册

    Spring Dynamic Modules (SPRING-DM) 是一个强大的框架,它将Spring框架与OSGi(开放服务网关倡议)集成在一起,提供了在动态模块化环境中部署和管理Spring应用程序的能力。这一集成对于希望利用OSGi的优势来构建...

    学习SpringDM+OSGI的总结

    例如,SpringDM中的`org.springframework.osgi.core`构建所需的JDK版本为1.5,而现代开发环境中通常使用更高版本的JDK。这可能导致项目无法正常编译或运行。 2. **依赖管理**:为了解决版本冲突问题,可能需要调整...

    OSGI+SpringDM+Hessian

    SpringDM允许开发者使用熟悉的Spring配置来定义服务,这些服务可以在OSGI容器中被发现和使用。通过SpringDM,开发者可以利用Spring的强大功能,如依赖注入、AOP(面向切面编程)等,同时享受到OSGI带来的动态性。 ...

    Spring动态模型参考指南1.0.1 osgi

    Spring Dynamic Modules 通过整合Spring框架和OSGi平台,为Java开发者提供了一种构建高度模块化、灵活且易于维护的应用程序的方法。对于那些希望利用现代Java开发实践的企业来说,Spring-DM是一个不可或缺的工具。...

    Spring OSGi 入门.pdf

    ### Spring OSGi 入门知识点...以上内容为Spring OSGi入门的基本知识点,涵盖了Spring DM的基础概念、配置方法以及如何在OSGi环境中导出和引用服务等内容。这些知识点对于理解如何将Spring与OSGi结合使用具有重要意义。

    基于spring dm server 的osgi 例子

    【标题】:“基于Spring DM Server的OSGi实例” 在IT领域,OSGi(Open Services Gateway Initiative)是一种模块化系统和Java服务平台,它允许开发者创建可热插拔的组件,从而提高了软件的可维护性和可扩展性。...

    SpringDM笔记13-OSGi服务注册与引用

    在SpringDM(Spring Dynamic Modules)框架中,OSGi(Open Service Gateway Initiative)服务注册与引用是核心功能之一,它使得模块化系统中的组件能够互相发现并交互。本篇笔记将探讨如何在OSGi环境中注册服务以及...

Global site tag (gtag.js) - Google Analytics