dubbo起步搭建Spring+SpringMVC+dubbo的開發環境(2,provider工程構建)
阿新 • • 發佈:2019-01-28
緊接上一期,構建provider工程
工程目錄如下圖:
TestDubbo介面程式碼如下:
package dp.dubbo.service;
public interface TestDubbo {
public String getStr();
}
介面的實現TestDubboImpl程式碼如下:
dubbo的配置檔案 applicationContext_dubbo-provider.xml 如下:package dp.dubbo.service.impl; import dp.dubbo.service.TestDubbo; //import com.alibaba.dubbo.config.annotation.Service; //@Service(version="1.0.0") public class TestDubboImpl implements TestDubbo { public String getStr() { return "hahahaha"; } }
<?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:dubbo="http://code.alibabatech.com/schema/dubbo" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://code.alibabatech.com/schema/dubbo http://code.alibabatech.com/schema/dubbo/dubbo.xsd"> <dubbo:application name="provider-dubboTest" /> <!-- <dubbo:annotation package="dp.dubbo.service" /> --> <!--zookeeper註冊中心 <dubbo:registry protocol="zookeeper" address="10.57.41.19:2181" />--> <!--使用multicast廣播註冊中心暴露服務地址 --> <dubbo:registry address="multicast://224.5.6.7:1234" /> <dubbo:protocol name="dubbo" port="20880" /> <!-- --> <dubbo:service interface="dp.dubbo.service.TestDubbo" ref="testDubboService"/> <bean id="testDubboService" class="dp.dubbo.service.impl.TestDubboImpl" /> </beans>
注意
需要注意的是最後兩行。
<bean id="testDubboService" class="dp.dubbo.service.impl.TestDubboImpl" />
跟本地服務配置一樣。
<dubbo:service interface="dp.dubbo.service.TestDubbo" ref="testDubboService"/>
這句是暴露服務。interface 中的內容,一定要跟所寫的 介面 程式碼 類名稱完全一樣;
ref 後面 寫的是 下面定義的 服務 bean 的 id
此外,要注意 這個xml配置檔案的標頭檔案 ,一定不要把 dubbo相關的內容漏掉。
在web.xml里加載 dubbo的配置檔案。方法跟載入普通的 spring配置檔案是一樣的。
程式碼如下
<!DOCTYPE web-app PUBLIC
"-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
"http://java.sun.com/dtd/web-app_2_3.dtd" >
<web-app>
<welcome-file-list>index.jsp</welcome-file-list>
<display-name>dp</display-name>
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>
classpath:/applicationContext_dubbo-provider.xml
</param-value>
</context-param>
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
</web-app>
到此服務提供者的工程已經搭建成功了。