Spring boot和dubbo整合部署到tomcat——基于注解方式
来源:互联网 发布:java双向链表 编辑:程序博客网 时间:2024/05/16 19:38
之前写过一篇类似的整合Spring boot和dubbo整合——基于传统方式。这种方式是依赖于dubbo xml配置文件的,而且不能部署到tomcat启动。
今天这篇使用了spring-boot-starter-dubbo
包,通过注解方式声明生产者和消费者,抛弃了dubbo xml配置文件,而且是部署到tomcat下启动的。下面就来看看怎么实现的吧:
项目结构
分为三个模块,consumer(消费者)、interface(消费者和提供者依赖的共同接口)、provider(提供者),这也是咱们项目中通常的模块分隔方式。
这是在上一篇Spring Boot项目部署到Eclipse下的tomcat的代码基础上改造而成。
- 添加dubbo依赖
提供者、消费者pom中添加
<dependency> <groupId>io.dubbo.springboot</groupId> <artifactId>spring-boot-starter-dubbo</artifactId> <version>1.0.0</version></dependency>
提供者
- 代码结构
- UserServiceImpl:
实现了
UserService
接口,通过@Service(version="1.0.0")
声明自己是服务提供者
import com.alibaba.dubbo.config.annotation.Service;@Service(version="1.0.0")public class UserServiceImpl implements UserService { @Override public String getUserName() { System.out.println("Being invoked"); return "test user"; }}
SpringBootStartApplication和ControllerDemo与前一篇的代码一样,没改变。- 配置文件application.properties
spring.dubbo.application.name=providerspring.dubbo.registry.address=zookeeper://127.0.0.1:2181spring.dubbo.protocol.name=dubbospring.dubbo.protocol.port=20880spring.dubbo.scan=com.example
消费者
- 代码结构
- Consumer:
通过
@Reference(version = "1.0.0")
声明,注入提供者服务。
import com.alibaba.dubbo.config.annotation.Reference;@RestController public class Consumer { @Reference(version = "1.0.0") private UserService userService; @RequestMapping("/") String consume() { System.out.println("++++++++++++++++++++++++++"); return userService.getUserName(); } }
SpringBootStartApplication同提供者。- 配置文件application.properties
spring.dubbo.application.name=consumerspring.dubbo.registry.address=zookeeper://127.0.0.1:2181spring.dubbo.scan=com.example
接口
- 代码结构
定义了一个接口,供提供者、消费者依赖。
public interface UserService { public String getUserName();}
注意
注意以下配置,否则项目可能run不起来。我是eclipse下的配置:
最后发布到eclipse下的tomcat,start!
附录
项目地址:https://gitee.com/earthhour/spring-boot-demo.git
阅读全文
0 1
- Spring boot和dubbo整合部署到tomcat——基于注解方式
- Spring boot和dubbo整合——基于传统方式
- 基于注解的spring boot整合Druid
- Spring boot 整合Dubbo
- Spring Boot整合Dubbo
- Spring Boot Dubbo 整合和入门理解
- Spring Boot整合Dubbo运行
- spring boot + dubbo整合注意事项
- (十)Spring Boot 整合dubbo
- Spring Boot整合Dubbo运行
- Spring Boot系列之六 以注解方式整合MyBatis
- 基于注解的mybatis和spring整合
- 基于注解的mybatis和spring整合
- 基于注解的mybatis和spring整合
- dubbo系列(一)——dubbo简介和dubbo+spring+zookeeper配置整合
- dubbo系列(二)——dubbo+zookeeper+spring注解方式集成
- Spring Boot集成MyBatis——注解方式
- Spring Boot集成MyBatis——注解方式
- jHipster 3.4 创建最流行Java Web应用项目最简单的入门基本教程
- IP分片
- Python培训(1)
- MySQL删除数据
- ES6系列之---Map
- Spring boot和dubbo整合部署到tomcat——基于注解方式
- 解决DeferredResult 使用 @ResponseBody 注解返回中文乱码
- vue模板语法
- 网站大量修改title后优化
- Python学习笔记(持续更新)
- 【LeetCode解答八】Longest Common Prefix问题Java解答
- 限制内存用快排原理PHP
- React,初见
- 关于char[]转换成LPCWSTR的有关问题