springboot集成dubbo
程序员文章站
2022-04-30 19:38:00
...
dubbo XML文件引用:@ImportResource("classpath:dubbo-consum.xml")
有的springboot版本会出现,dubbo注册服务的xml文件中引用的service报错不能注入,需要加入<dubbo:annotation package="com.dubbo.*" />
dubbo XSD文件需要手动导入到开发工具中
-
最头疼的一个,就是版本冲突,首先是dubbo与spring的冲突,然后是zk与sf4j的冲突。
<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>
上面的maven引入springboot用的版本是1.3.0的
<?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>
上面是生产者dubbo xml文件,文件放在resources中
@SpringBootApplication @ImportResource("classpath:dubbo-consum.xml") public class Application { public static void main(String[] args) throws Exception { SpringApplication.run(Application.class, args); } }
这是引用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文件 文件位置跟生产者一样
转载于:https://my.oschina.net/u/2335693/blog/624775
上一篇: springboot集成dubbo
下一篇: Grails 部署
推荐阅读
-
spring集成mybatis原理(spring和mybatis整合步骤)
-
springboot源码怎么看(springboot源码深度解析)
-
springboot中使用redis的方法代码详解
-
springboot2.0和springcloud Finchley版项目搭建(包含eureka,gateWay,Freign,Hystrix)
-
简述springboot及springboot cloud环境搭建
-
PHP集成环境XAMPP的安装与配置
-
thinkphp集成前端脚手架Vue-cli的教程图解
-
Spring Boot集成Kafka的示例代码
-
Springboot Cucumber测试配置介绍详解
-
详解如何在SpringBoot里使用SwaggerUI