1. 程式人生 > >dubbo起步搭建Spring+SpringMVC+dubbo的開發環境(2,provider工程構建)

dubbo起步搭建Spring+SpringMVC+dubbo的開發環境(2,provider工程構建)

緊接上一期,構建provider工程

工程目錄如下圖:


TestDubbo介面程式碼如下:

package dp.dubbo.service;

public interface TestDubbo {
	public String getStr();
}

介面的實現TestDubboImpl程式碼如下:
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";
	}

}
dubbo的配置檔案 applicationContext_dubbo-provider.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: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>


到此服務提供者的工程已經搭建成功了。