成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

使用Spring DM創建Hello World,以及OSGi服務

譯文
開發 后端
Spring DM框架支持OSGi套件的開發,因此是學習OSGi的一個絕佳環境。本文將使用Spring DM來創建一個簡單的Hello World應用程序。

【51CTO精選譯文】本文是《你好,OSGi》系列的第七部分。現在讀者們多半已經了解了何謂Spring DM,它和OSGi的關系,以及Spring DM開發環境的設置,那么下面將要開始進行應用程序的開發了。

51CTO編輯推薦:OSGi入門與實踐全攻略

歡迎來到 Spring 世界!

在這一部分,我們將使用 Spring DM來創建一個簡單的 Hello World 應用程序。這個非常簡單的應用程序將在啟動時在你的控制臺上輸出“Hello Spring World!!”,并且在關閉時輸出“Goodbye Spring World!!”。***步是創建一個簡單的 HelloWorld.java 類,請參見以下代碼:

代碼清單1. HelloWorld.java

  1. package com.javaworld.osgi.spring;  
  2. public class HelloWorld {  
  3. public void start() throws Exception {  
  4. System.out.println("Hello Spring World!! " );  
  5. }  
  6. public void stop() throws Exception {  
  7. System.out.println("Goodbye Spring World!!");  
  8. }  
  9. }  
  10.  

正如你所見,HelloWorld.java 是一個簡單的類,它沒有實施任何借口或者擴展任何超類(superclass)。它包含兩個方法:start() 和 stop()。在應用程序啟動時調用 start() 方法;關閉時調用stop()方法。

下一步是在 META-INF/spring 文件夾中創建一個helloworld.xml 文件:

代碼清單 2. helloworld.xml

  1. < ?xml version="1.0" encoding="UTF-8"?> 
  2. < beans xmlns="http://www.springframework.org/schema/beans" 
  3. xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
  4. xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd"> 
  5. < bean name="hello" class="com.javaworld.osgi.spring.HelloWorld" 
  6. init-method="start" destroy-method="stop" /> 
  7. < /beans> 
  8.  

在該文件中,只聲明了一個名為hello 的 bean,指向com.javaworld.osgi.spring.HelloWorld  類。該 bean 的 init-method 值為 start。destroy-method 屬性的值為stop。

當將你的應用程序zuowei Eclipse OSGi 應用程序執行時,應可以在你的控制臺上看到“Hello Spring World!!”這條消息。怎么會這么簡單?是對,當你創建 META-INF/spring 文件夾并保護你的 helloworld.xml 文件時,已經對其進行了設置。

當 extender 套件啟動時,它會發現你的 HelloWorld 套件是由 Spring 提供的。hello  bean 已經將 start() 定義為它的初始化方法,因此 Spring 框架將調用 HelloWorld 類的 start() 方法。同樣,當你關閉 HelloWorld 套件時,Spring 框架將調用 HelloWorld.java 的 stop() 方法。

Spring DM中面向服務的應用程序

OSGi 在面向服務應用程序開發方面的適用性是其最讓人關注的功能之一。OSGi服務平臺運行 OSGi服務構建的、面向服務的應用程序。這一服務只是一個簡單的Java 對象,在一個或多個接口名稱下發布。OSGi 服務平臺的構思是一個源(source)套件在一個公共的寄存器導出服務。然后消費者(consumer)搜索實施了某一特定接口的服務;一旦找到就將其與該服務綁定并使用它。

在構建復雜的企業應用程序時,OSGi服務平臺非常有用。例如,假設我們要創建一個 Web 應用程序,那么在 OSGi 實施中,你可以將該應用程序分為兩個套件。數據訪問套件可與數據庫互動并將數據訪問服務導出至一個公共寄存器。Web 層套件將導入數據訪問服務并使用它們將數據顯示給終端用戶。

這種基于模塊化架構進行應用程序創建的設計讓數據訪問服務的更新變得非常容易。比如,要從一個較慢的服務更新到一個較快的服務,你可以創建一個不同的數據訪問服務,來和 Web 服務實現進行會話,然后將 RDMBS 服務替換為這一新的服務,而且無需重啟你的應用程序。

在下一個部分我們將構建一個面向服務的聯絡管理應用程序。該應用程序將演示 Spring bean 如何能夠被導出為 OSGi服務,以及 OSGi服務如何導出為 Spring bean。

【編輯推薦】

  1. OSGi與Spring:設置Spring DM開發環境
  2. OSGi和Spring入門:什么是Spring動態模型(Spring DM)?
  3. OSGi服務:非常適合SOA的架構
  4. OSGi依賴性管理:Bundle訪問域
  5. OSGi是什么:Java語言的動態模塊系統
責任編輯:yangsai 來源: 51CTO.com
相關推薦

2009-09-16 17:15:19

OSGi Bundle

2009-10-09 13:42:56

Spring DataSpring DM

2009-09-28 13:13:16

設置Spring DM

2009-10-19 14:14:19

OSGi Web應用

2009-09-27 09:29:56

OSGi和SpringSpring動態模型Spring DM

2021-11-26 08:22:01

Java動態開發

2014-12-19 10:07:10

C

2017-11-23 17:45:46

Yii框架IntelYii框架深度剖析

2012-02-20 14:26:48

JavaPlay Framew

2022-11-04 08:29:12

NodejsHttp 服務

2009-07-30 13:21:17

Scala入門Hello World

2009-08-11 10:32:23

什么是Groovy

2023-01-06 08:18:44

2023-09-04 07:30:03

Wasm匯編語言

2011-06-08 14:39:06

Qt 教程

2022-04-27 10:51:00

PythonMLCubePodman

2009-06-18 15:24:08

Spring OSGi

2009-08-14 16:54:19

C# Hello Wo

2011-08-05 09:48:46

iPhone Interface

2024-04-11 13:13:27

點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 日韩欧美一区二区三区免费看 | 亚洲免费影院 | 玖玖精品| 国产精品1区2区3区 欧美 中文字幕 | 9久久婷婷国产综合精品性色 | 在线免费视频一区 | 亚洲一区二区不卡在线观看 | 中文精品视频 | 国产aa | 国产高清免费 | 免费骚视频 | 天天搞天天搞 | 亚洲欧美精品 | 色综合视频在线 | 国产亚洲精品久久19p | 亚洲高清在线播放 | 亚洲精品区 | 日韩欧美一区二区三区在线播放 | 亚洲日韩欧美一区二区在线 | 国产精品1区2区3区 中文字幕一区二区三区四区 | 免费久久精品 | 亚洲成人免费观看 | 麻豆视频在线免费看 | 国产精品日韩高清伦字幕搜索 | 亚洲小视频 | 欧美a在线看 | 欧美日韩免费 | 91精品久久久| 91在线精品秘密一区二区 | 亚洲成av片人久久久 | 黑人中文字幕一区二区三区 | 欧美色综合一区二区三区 | 精品欧美一区二区中文字幕视频 | h视频在线看 | 欧美视频二区 | 黄色操视频 | 久久99精品久久久久久噜噜 | 免费视频一区二区三区在线观看 | 欧美一级欧美三级在线观看 | 中文字幕一区在线观看视频 | 在线看免费的a |