#spring-boot-start-dubbo
## 如何使用
### 1. clone 代码
```
git clone git@github.com:teaey/spring-boot-starter-dubbo.git
```
### 2. 编译安装
```
cd spring-boot-starter-dubbo
mvn clean install
```
### 3. 修改maven配置文件(可以参考样例[spring-boot-starter-dubbo-sample](https://github.com/teaey/spring-boot-starter-dubbo-sample))
* 在Spring Boot项目的pom.xml增加parent:
```
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>1.3.6.RELEASE</version>
</parent>
```
* 在Spring Boot项目的pom.xml中添加以下依赖:
```
<dependency>
<groupId>io.dubbo.springboot</groupId>
<artifactId>spring-boot-starter-dubbo</artifactId>
<version>1.0.0-SNAPSHOT</version>
</dependency>
```
* maven插件用于打包成可执行的uber-jar文件,添加以下插件(这里一定要加载需要打包成jar的mudule的pom中)
```
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<version>1.3.6.RELEASE</version>
</plugin>
```
### 4. 发布服务
服务接口:
```
package cn.teaey.sprintboot.test;
public interface EchoService {
String echo(String str);
}
```
在application.properties添加Dubbo的版本信息和客户端超时信息,如下:
```
spring.dubbo.application.name=provider
spring.dubbo.registry.address=zookeeper://192.168.99.100:32770
spring.dubbo.protocol.name=dubbo
spring.dubbo.protocol.port=20880
spring.dubbo.scan=cn.teaey.sprintboot.test
```
在Spring Application的application.properties中添加spring.dubbo.scan即可支持Dubbo服务发布,其中scan表示要扫描的package目录
* spring boot启动
```
package cn.teaey.sprintboot.test;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication
public class Server {
public static void main(String[] args) {
SpringApplication.run(Server.class, args);
}
}
```
* 编写你的Dubbo服务,只需要添加要发布的服务实现上添加 @Service ,如下
```
package cn.teaey.sprintboot.test;
import com.alibaba.dubbo.config.annotation.Service;
@Service(version = "1.0.0")
public class EchoServerImpl implements EchoService {
public String echo(String str) {
System.out.println(str);
return str;
}
}
```
### 5. 消费Dubbo服务
* 在application.properties添加Dubbo的版本信息和客户端超时信息,如下:
```
spring.dubbo.application.name=consumer
spring.dubbo.registry.address=zookeeper://192.168.99.100:32770
spring.dubbo.scan=cn.teaey.sprintboot.test
```
在Spring Application的application.properties中添加spring.dubbo.scan即可支持Dubbo服务发布,其中scan表示要扫描的package目录
* spring boot启动
```
package cn.teaey.sprintboot.test;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.context.ConfigurableApplicationContext;
@SpringBootApplication
public class Client {
public static void main(String[] args) {
ConfigurableApplicationContext run = SpringApplication.run(Client.class, args);
AbcService bean = run.getBean(AbcService.class);
System.out.println(bean.echoService.echo("abccc"));
}
}
```
* 引用Dubbo服务,只需要添加要发布的服务实现上添加 @Reference ,如下:
```
package cn.teaey.sprintboot.test;
import com.alibaba.dubbo.config.annotation.Reference;
import org.springframework.stereotype.Component;
@Component
public class AbcService {
@Reference(version = "1.0.0")
public EchoService echoService;
}
```
### 6. 打包
> 可以直接执行Server或者Client启动
> 可以通过mvn clean package 打包成可执行的uber-jar文件
没有合适的资源?快使用搜索试试~ 我知道了~
Spring Cloud与Dubbo共存方案.zip
共106个文件
java:42个
xml:21个
yml:9个
需积分: 5 0 下载量 142 浏览量
2024-01-15
08:57:48
上传
评论
收藏 75.46MB ZIP 举报
温馨提示
方案是为解决特定问题或达成特定目标而制定的一系列计划或步骤。它的作用是提供一种系统性的方法,以有效地应对挑战、优化流程或实现目标。以下是方案的主要作用: 问题解决: 方案的核心目标是解决问题。通过系统性的规划和执行,方案能够分析问题的根本原因,提供可行的解决方案,并引导实施过程,确保问题得到合理解决。 目标达成: 方案通常与明确的目标相关联,它提供了一种达成这些目标的计划。无论是企业战略、项目管理还是个人发展,方案的制定都有助于明确目标并提供达成目标的路径。 资源优化: 方案在设计时考虑了可用资源,以最大化其效用。通过明智的资源分配,方案可以在有限的资源条件下实现最大的效益,提高效率并减少浪费。 风险管理: 方案通常会对潜在的风险进行评估,并制定相应的风险管理策略。这有助于减轻潜在问题的影响,提高方案的可行性和可持续性。 决策支持: 方案提供了决策者所需的信息和数据,以便做出明智的决策。这种数据驱动的方法有助于减少不确定性,提高决策的准确性。 团队协作: 复杂的问题通常需要多个人的协同努力。方案提供了一个共同的框架,帮助团队成员理解各自的职责和任务,促进协作并确保整个团队朝着共同的目标努力。 监控与评估: 方案通常包括监控和评估的机制,以确保实施的有效性。通过定期的评估,可以及时调整方案,以适应变化的环境或新的挑战。 总体而言,方案的作用在于提供一种有序、有计划的方法,以解决问题、实现目标,并在实施过程中最大化资源利用和风险管理。
资源推荐
资源详情
资源评论
收起资源包目录
Spring Cloud与Dubbo共存方案.zip (106个子文件)
spring.factories 325B
spring.factories 325B
spring.factories 325B
.gitignore 233B
.gitignore 233B
.gitignore 163B
.gitignore 9B
.gitignore 9B
.gitignore 9B
.gitignore 9B
.gitignore 9B
DubboConfigurationApplicationContextInitializer.java 1KB
DubboConfigurationApplicationContextInitializer.java 1KB
DubboConfigurationApplicationContextInitializer.java 1KB
DubboHolderListener.java 1KB
DubboHolderListener.java 1KB
DubboHolderListener.java 1KB
User.java 1KB
User.java 1KB
User.java 1KB
DubboProperties.java 1KB
DubboProperties.java 1KB
DubboProperties.java 1KB
DubboAutoConfiguration.java 963B
DubboAutoConfiguration.java 963B
DubboAutoConfiguration.java 963B
User.java 843B
User.java 843B
User.java 843B
ConsumerMovieApplication.java 697B
ConsumerMovieApplication.java 697B
ConsumerMovieApplication.java 697B
MovieController.java 662B
MovieController.java 662B
MovieController.java 662B
UserRestService.java 528B
UserRestService.java 528B
UserRestService.java 528B
EurekaApplication.java 470B
EurekaApplication.java 470B
DubboProviderApplication.java 418B
SidecarApplication.java 398B
UserServiceImpl.java 381B
UserServiceImpl.java 381B
UserServiceImpl.java 381B
DubboProviderApplication.java 330B
DubboProviderApplication.java 330B
UserRepository.java 227B
UserRepository.java 227B
UserRepository.java 227B
UserService.java 99B
UserService.java 99B
UserService.java 99B
amz-购书链接.jpg 151KB
社区公众号.jpg 21KB
个人公众号.jpg 5KB
README.md 4KB
README.md 4KB
README.md 4KB
README.md 4KB
README.md 870B
README.md 870B
README.md 870B
jd-购书链接.png 143KB
spring.provides 35B
spring.provides 35B
spring.provides 35B
data.sql 293B
data.sql 293B
data.sql 293B
schema.sql 183B
schema.sql 183B
schema.sql 183B
dubbo-admin-2.5.4-SNAPSHOT.war 25.18MB
dubbo-admin-2.5.4-SNAPSHOT.war 25.18MB
dubbo-admin-2.5.4-SNAPSHOT.war 25.18MB
pom.xml 2KB
pom.xml 2KB
pom.xml 2KB
pom.xml 2KB
pom.xml 2KB
pom.xml 2KB
pom.xml 2KB
pom.xml 2KB
pom.xml 2KB
pom.xml 2KB
pom.xml 1KB
pom.xml 1KB
pom.xml 1KB
pom.xml 1KB
pom.xml 1KB
pom.xml 822B
pom.xml 777B
pom.xml 738B
pom.xml 666B
pom.xml 666B
pom.xml 666B
application.yml 1015B
application.yml 889B
application.yml 889B
共 106 条
- 1
- 2
资源评论
JJJ69
- 粉丝: 6212
- 资源: 5783
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功