● 定義服務接口 (該接口需單獨打包,在服務提供方和消費方共享)
● 在服務提供方實現(xiàn)接口(對服務消費方隱藏實現(xiàn))
● 用 Spring 配置聲明暴露服務
加載 Spring 配置(創(chuàng)建 bean)
● 新建 web 項目,命名:04-dubboProviderService
注意:
(1)選擇 Tomcat 作為服務器。
(2)生成 web.xml 文件。
● 導入 jar
dubbo.jar: Dubbo 框架的實現(xiàn)
javaassist-3.15.0-GA.jar:字節(jié)碼生成 jar
netty-3.2.5.Final.jar:網(wǎng)絡(luò)傳輸
spring-*.jar: Dubbo 是基于 spring 的。配置
● 定義表示天氣信息的對象 Weather
重寫的 toString()
不實現(xiàn) Serializable 接口的錯誤提示:
● 定義服務的接口(面向接口編程)
● 定義天氣接口的實現(xiàn)類
包名 :package com.bjpowernode.service.provider
● 編寫 Spring 配置文件,Spring 作為容器管理對
第一步:加入:dubbo.xsd 約束文件
第二步:本機配置代碼提示:eclipse 菜單 Windows-→Preferences
第三步:聲明服務定義
dubbo:application:定義服務名稱,一般使用項目名。
dubbo:service:聲明服務,暴露給消費者使用。
bean:定義服務的實現(xiàn)類,提供服務的代碼實現(xiàn)。spring 中的標簽
● 新建測試類:MyTest 測試配置文件,對象定義等是否正確。
● 修改 web.xml 文件,web 應用中使用
服務提供者的功能實現(xiàn)完成。
● 導出服務接口
第一步:服務接口要給消費者使用,需要把接口定義打成 jar .
第二步:導出接口
第三步:查看導出的 jar 文件
使用 winrar 等壓縮軟件查
服務消費者
1、直接使用遠程服務提供者對象
服務消費者項目可以是 j2se, j2ee 等項目類型,使用服務。
服務消費者開發(fā)步驟:
通過 Spring 配置引用遠程服務
加載 Spring 配置,并調(diào)用遠程服務:(也可以使用 IoC 注入)
項目結(jié)構(gòu):
● 新建 java project ,命名 04-dubboConsume
● 導入
工程根目錄下,新建 libs,存放 jar。這個項目是非 web 應用,不需要 spring-web.jar,
● 新建天氣信息類 Weacher,結(jié)構(gòu)同服務提供者項目中的 Weacher
可以拷貝服務提供者類中的 Weather, 或者服務提供者導出接口的同時,把 Weather 類和接口一同導出到 dubbo-weather-provider.jar
重寫的 toString()
● 新建配置文件 dubbo-consume.xml
配置文件需要加入 spring 和 dubbo 的約束文件,同服務提供者的provider.xml 的操作方
● 測試訪問遠程服
首先啟動,服務提供者。服務提供者 05-ProviderService 是 web 應用發(fā)布到 tomcat 上運行
加入:
輸出:
● 新建使用遠程服務對象的 Service
● 修改 dubbo-consume.xml 聲明 ShowWeatherService 對象,注入服務提供者對象
● 測試類