dubbo-spring-boot-starter
Dubbo Spring Boot Starter。也可以關(guān)注dubbo官方的dubbo-spring-boot-project
支持jdk版本為1.6或者1.6+
(在修改源碼前,請(qǐng)導(dǎo)入googlestyle-java.xml以保證一致的代碼格式)
如何發(fā)布dubbo服務(wù)
- 添加依賴:
<dependency>
<groupId>com.alibaba.spring.boot</groupId>
<artifactId>dubbo-spring-boot-starter</artifactId>
<version>2.0.0</version>
</dependency>
- 在application.properties添加dubbo的相關(guān)配置信息,樣例配置如下:
spring.application.name=dubbo-spring-boot-starter
spring.dubbo.server=true
spring.dubbo.registry=N/A
注:這個(gè)配置只針對(duì)服務(wù)提供端,消費(fèi)端不用指定協(xié)議,它自己會(huì)根據(jù)服務(wù)端的地址信息和@Reference注解去解析協(xié)議
- 接下來(lái)在Spring Boot Application的上添加
@EnableDubboConfiguration,表示要開啟dubbo功能. (dubbo provider服務(wù)可以使用或者不使用web容器)
@SpringBootApplication
@EnableDubboConfiguration
public class DubboProviderLauncher {
//...
}
- 編寫你的dubbo服務(wù),只需要添加要發(fā)布的服務(wù)實(shí)現(xiàn)上添加
@Service(import com.alibaba.dubbo.config.annotation.Service)注解,其中interfaceClass是要發(fā)布服務(wù)的接口.
@Service(interfaceClass = IHelloService.class)
@Component
public class HelloServiceImpl implements IHelloService {
//...
}
- 啟動(dòng)你的Spring Boot應(yīng)用,觀察控制臺(tái),可以看到dubbo啟動(dòng)相關(guān)信息.
如何消費(fèi)Dubbo服務(wù)
- 添加依賴:
<dependency>
<groupId>com.alibaba.spring.boot</groupId>
<artifactId>dubbo-spring-boot-starter</artifactId>
<version>2.0.0</version>
</dependency>
- 在application.properties添加dubbo的相關(guān)配置信息,樣例配置如下:
spring.application.name=dubbo-spring-boot-starter
- 開啟
@EnableDubboConfiguration
@SpringBootApplication
@EnableDubboConfiguration
public class DubboConsumerLauncher {
//...
}
- 通過(guò)
@Reference注入需要使用的interface.
@Component
public class HelloConsumer {
@Reference(url = "dubbo://127.0.0.1:20880")
private IHelloService iHelloService;
}
參考文檔
- dubbo: http://dubbo.io
- spring-boot: http://projects.spring.io/spring-boot
- dubbo-spring-boot-project: https://github.com/dubbo/dubbo-spring-boot-project
Links:
本文由低調(diào)小熊貓一文多發(fā)操作發(fā)布! 歡迎關(guān)注公眾號(hào):低調(diào)小熊貓