springboot集成dubbo

  1. dubbo XML文件引用:@ImportResource("classpath:dubbo-consum.xml")java

  2. 有的springboot版本會出現,dubbo註冊服務的xml文件中引用的service報錯不能注入,須要加入<dubbo:annotation package="com.dubbo.*" />git

  3. dubbo XSD文件須要手動導入到開發工具中github

  4. 最頭疼的一個,就是版本衝突,首先是dubbo與spring的衝突,而後是zk與sf4j的衝突。web


  5. <dependency>
    			<groupId>org.springframework.boot</groupId>
    			<artifactId>spring-boot-starter-web</artifactId>
    			<version>${spring.boot.version}</version>
    		</dependency>
    		
    		<dependency>
    			<groupId>com.alibaba</groupId>
    			<artifactId>dubbo</artifactId>
    			<version>2.5.3</version>
    			<exclusions>
    				<exclusion>
    					<groupId>org.springframework</groupId>
    					<artifactId>spring</artifactId>
    				</exclusion>
    			</exclusions>
    		</dependency>
    		<dependency>
    			<groupId>org.apache.zookeeper</groupId>
    			<artifactId>zookeeper</artifactId>
    			<version>3.4.6</version>
    			<exclusions>
    				<exclusion>
    					<groupId>org.slf4j</groupId>
    					<artifactId>slf4j-log4j12</artifactId>
    				</exclusion>
    				<exclusion>
    					<groupId>log4j</groupId>
    					<artifactId>log4j</artifactId>
    				</exclusion>
    			</exclusions>
    		</dependency>
    
    		<dependency>
    			<groupId>com.github.sgroschupf</groupId>
    			<artifactId>zkclient</artifactId>
    			<version>0.1</version>
    		</dependency>
  6. 上面的maven引入springboot用的版本是1.3.0的
  7. <?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:jee="http://www.springframework.org/schema/jee"
    	xmlns:tx="http://www.springframework.org/schema/tx"
    	xmlns:dubbo="http://code.alibabatech.com/schema/dubbo"
    	xmlns:context="http://www.springframework.org/schema/context"
    	xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.1.xsd
    	http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-3.1.xsd
    	http://www.springframework.org/schema/jee http://www.springframework.org/schema/jee/spring-jee-3.1.xsd
    	http://code.alibabatech.com/schema/dubbo http://code.alibabatech.com/schema/dubbo/dubbo.xsd
    	http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.1.xsd"
    	default-lazy-init="false" >
       <!-- 提供方應用名稱信息,這個至關於起一個名字,咱們dubbo管理頁面比較清晰是哪一個應用暴露出來的 -->
       <dubbo:application name="dubbo-provider-dsp"></dubbo:application>
       <dubbo:annotation package="pring.boot.*" />
       <!-- 使用zookeeper註冊中心暴露服務地址 -->  
       <dubbo:registry address="zookeeper://192.168.2.164:2181" check="false" subscribe="false" register=""></dubbo:registry>
      <!-- 要暴露的服務接口 -->  
      <dubbo:service interface="pring.boot.service.dubbo.DubboService" ref="dubboService" />  	
    </beans>
  8. 上面是生產者dubbo xml文件,文件放在resources中
  9. @SpringBootApplication
    @ImportResource("classpath:dubbo-consum.xml")
    public class Application {
    
        public static void main(String[] args) throws Exception {
            SpringApplication.run(Application.class, args);
        }
    
    }
  10. 這是引用dubbo文件,生產者和消費者都是同樣引入。
<?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="dubbo-custom-dsp"/>   
    <dubbo:registry address="zookeeper://192.168.2.164:2181" />  
    <!-- 生成遠程服務代理,能夠和本地bean同樣使用demoService -->  
    <dubbo:reference id="dubboService" interface="pring.boot.service.dubbo.DubboService" />  
</beans>
這是消費者dubbo xml文件 文件位置跟生產者同樣
相關文章
相關標籤/搜索