本篇文章給大家分享的是有關(guān)spring|springboot集成dubbo的操作過程,小編覺得挺實(shí)用的,因此分享給大家學(xué)習(xí),希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。
在桂平等地區(qū),都構(gòu)建了全面的區(qū)域性戰(zhàn)略布局,加強(qiáng)發(fā)展的系統(tǒng)性、市場前瞻性、產(chǎn)品創(chuàng)新能力,以專注、極致的服務(wù)理念,為客戶提供成都網(wǎng)站設(shè)計(jì)、成都網(wǎng)站建設(shè)、外貿(mào)網(wǎng)站建設(shè) 網(wǎng)站設(shè)計(jì)制作按需網(wǎng)站設(shè)計(jì),公司網(wǎng)站建設(shè),企業(yè)網(wǎng)站建設(shè),品牌網(wǎng)站制作,營銷型網(wǎng)站建設(shè),外貿(mào)網(wǎng)站制作,桂平網(wǎng)站建設(shè)費(fèi)用合理。
現(xiàn)在國內(nèi)中小公司,遠(yuǎn)程調(diào)用基本上用的都是dubbo ,當(dāng)然小刀的公司也不例外,我們以前用的是dubbo 2.4.x的版本,雖然也能使用,但是本著新項(xiàng)目新技術(shù)的追求,我們更新成了dubbo 2.7.x 的版本
引入dubbo , zk的jar包
@ImportResource({"classpath*:dubbo/*.xml"})public class Start extends SpringBootServletInitializer
dubbo.properties內(nèi)容如下:
dubbo.container=logback,springdubbo.application.name=dubbo-servicedubbo.registry.address=zookeeper://zookeeper.xxx.com:2181dubbo.log4j.file=logs/dubbo-service.logdubbo.log4j.level=WARNdubbo.protocol.port=20782dubbo.protocol.dispatcher=messagedubbo.protocol.threadpool=fixeddubbo.protocol.threads=200
還有dubbo.provider.xml
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-2.5.xsd
http://code.alibabatech.com/schema/dubbo http://code.alibabatech.com/schema/dubbo/dubbo.xsd">
這時(shí)候去dubbo-admin上應(yīng)該可以看到應(yīng)用注冊上去了
借著上一波用gradle搭的多模塊的架子,今天我們來往里面添加dubbo
官方文檔:
https://github.com/apache/dubbo-spring-boot-project
先引入相關(guān)的依賴,這里就要注意了,依賴放在service層,因?yàn)槭莝ervice層才需要提供dubbo服務(wù)出去. 當(dāng)然為了省事的話,也可以放到business-impl里面,因?yàn)槲覀兺ㄟ^會調(diào)用別的項(xiàng)目的dubbo接口,但是嚴(yán)格來說,基礎(chǔ)服務(wù)類的應(yīng)用,只從自己的數(shù)據(jù)庫取數(shù)據(jù),然后通過dubbo接口返回給業(yè)務(wù)應(yīng)用.所以在基礎(chǔ)應(yīng)用中,只能把依賴引在service層,業(yè)務(wù)應(yīng)用可以直接引在business-impl層
服務(wù)提供層
implementation 'org.springframework.boot:spring-boot-starter'
testImplementation 'org.springframework.boot:spring-boot-starter-test'
compile group: 'org.apache.dubbo', name: 'dubbo-spring-boot-starter', version: '2.7.1'
compile (group: 'org.apache.dubbo', name: 'dubbo-dependencies-zookeeper', version: '2.7.2')
{
exclude group:'org.slf4j'
}
compile ('org.apache.dubbo:dubbo:2.7.2'){
exclude group: 'org.springframework'
exclude group: 'javax.servlet'
exclude group: 'log4j'
}
application.properties中進(jìn)行配置:
dubbo.application.name=forest-servicedubbo.registry.address=zookeeper://zookeeper.xxx.com:30038dubbo.protocol.name=dubbodubbo.protocol.port=21899dubbo.config-center.address=zookeeper://zookeeper.xxx.com:30038dubbo.metadata-report.address=zookeeper://zookeeper.xxx.com:30038dubbo.scan.base-packages=com.platform.market.service.impl
此時(shí)代碼目錄結(jié)構(gòu)為:
其中,在實(shí)現(xiàn)類上,需要添加以下兩個(gè)注解:
@Service@Componentpublic class ItemServiceImpl implements ItemService
注意是dubbo包里面的service注解
然后我們在dubbo-admin中可以看到我們啟動(dòng)的服務(wù)
這邊就很簡單了,一句話搞定,把以前我們寫的@Autowire 換成dubbo包內(nèi)的 @Reference
就可以了
配置文件中只需要引注冊地址就可以了,
dubbo.application.name=xxxx-xxxxdubbo.registry.address=zookeeper://zookeeper.xxx.com:30038
以上就是spring|springboot集成dubbo的操作過程,小編相信有部分知識點(diǎn)可能是我們?nèi)粘9ぷ鲿姷交蛴玫降摹OM隳芡ㄟ^這篇文章學(xué)到更多知識。更多詳情敬請關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。