前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >spring dubbo集成(nacos dubbo)

spring dubbo集成(nacos dubbo)

作者头像
全栈程序员站长
发布2022-08-01 09:00:25
6610
发布2022-08-01 09:00:25
举报
文章被收录于专栏:全栈程序员必看

大家好,又见面了,我是你们的朋友全栈君。

springBoot整合dubbo集成

代码语言:javascript
复制
	传统Spring 整合dubbo,需要繁琐的编写一堆堆的*.xml 配置文件
	而springBoot整合dubbo后,不在需要写*.xml,通过jar包引用,完
	成整合,通过注解的形式完成配置。提高我们的开发效率

目录结构

在这里插入图片描述
在这里插入图片描述

1 服务层生产者开发(hs-ldm-server-service) 1.1添加dubbo依赖包

代码语言:javascript
复制
<dependencies>
  <dependency>
        <groupId>org.apache.curator</groupId>
        <artifactId>curator-framework</artifactId>
        <version>2.8.0</version>
    </dependency>
    <dependency>
        <groupId>org.apache.curator</groupId>
        <artifactId>curator-recipes</artifactId>
        <version>2.8.0</version>
    </dependency>

		<dependency>
		    <groupId>com.alibaba.spring.boot</groupId>
		    <artifactId>dubbo-spring-boot-starter</artifactId>
		    <version>2.0.0</version>
		</dependency>
		
	<dependency>
		<groupId>com.alibaba</groupId>
		<artifactId>dubbo</artifactId>
		<version>2.6.1</version>
	</dependency>
	<dependency>
		<groupId>org.apache.zookeeper</groupId>
		<artifactId>zookeeper</artifactId>
		<version>3.4.6</version>
	</dependency>
	<dependency>
		<groupId>com.101tec</groupId>
		<artifactId>zkclient</artifactId>
		<version>0.9</version>
	</dependency>

如果不加curator-recipes和curator-framework依赖启动java.lang.NoClassDefFoundError: org/apache/curator/RetryPolicy 问题。 启动如果报错,请检查依赖版本是否过低! 1.2 配置application.properties server.port=8050 #dubbo配置 spring.dubbo.application.name=hs-ldm-server-service #注册中心地址 spring.dubbo.registry.address=zookeeper://192.168.228.52:2181 #配置了这个后,就会一直有守护京城,而不是启动就怪盗了 spring.dubbo.server=true #扫描的包 spring.dubbo.scan=com.gy.ldm.server #Dubbo Protocol spring.dubbo.protocol.name=dubbo spring.dubbo.protocol.port=29999 spring.dubbo.protocol.version=1.0.0 #DemoService version service.version=1.0.0 1.3服务类

代码语言:javascript
复制
package com.gy.ldm.server.service;

import org.springframework.stereotype.Component;

import com.alibaba.dubbo.config.annotation.Service;
@Component
@Service(version="${service.version}" ,interfaceClass = DubboServiceApi.class)
public class DubboService implements DubboServiceApi{ 
   

	public String getDubbo() { 
   
		// TODO Auto-generated method stub
		return "dubbo";
	}

}

@component (把对象实例化到spring容器中) 注意这里的service引用!(com.alibaba.dubbo.config.annotation.Service) 1.4 服务启动类

代码语言:javascript
复制
@SpringBootApplication
@EnableDubboConfiguration
public class LdmServerApp { 
   
	
	public static void main(String[] args) { 
   
		SpringApplication.run(LdmServerApp.class, args);
	}
}
加载成功
加载成功

启动成功! 2.接入层消费者开发 添加依赖和服务层提供者依赖一样 2.1配置application.properties

代码语言:javascript
复制
server.port=8051
#dubbo配置
#服务名称
spring.dubbo.application.name=ldm-client
#注册中心地址
spring.dubbo.registry.address=zookeeper://192.168.228.52:2181 
#扫描的包
spring.dubbo.scan=com.gy.ldm.client
## DemoService version
service.version=1.0.0

2.2Controller层服务

代码语言:javascript
复制
package com.gy.ldm.client.controller;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;

import com.alibaba.dubbo.config.annotation.Reference;
import com.gy.ldm.server.service.DubboServiceApi;

@Controller
public class TestController { 
   
	@Reference(version="${service.version}",check = false)
	private DubboServiceApi dubboServiceApi;
	@RequestMapping("customer")
	@ResponseBody
	public String customer(){ 
   
		
		return dubboServiceApi.getDubbo();
	}
}

2.3启动服务

代码语言:javascript
复制
package com.gy.ldm.client;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.web.servlet.ServletComponentScan;

import com.alibaba.dubbo.spring.boot.annotation.EnableDubboConfiguration;



@EnableDubboConfiguration
@SpringBootApplication
public class LdmClientApp { 
   
	public static void main(String[] args) { 
   
		SpringApplication.run(LdmClientApp.class, args);
	}
}

3.测试访问

在这里插入图片描述
在这里插入图片描述

4.注册中心服务

在这里插入图片描述
在这里插入图片描述

可以看见提供者发布的服务

springboot整合dubbo项目会上传,可以在我主页去下载

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/127003.html原文链接:https://javaforall.cn

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022年4月1,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • springBoot整合dubbo集成
相关产品与服务
微服务引擎 TSE
微服务引擎(Tencent Cloud Service Engine)提供开箱即用的云上全场景微服务解决方案。支持开源增强的云原生注册配置中心(Zookeeper、Nacos 和 Apollo),北极星网格(腾讯自研并开源的 PolarisMesh)、云原生 API 网关(Kong)以及微服务应用托管的弹性微服务平台。微服务引擎完全兼容开源版本的使用方式,在功能、可用性和可运维性等多个方面进行增强。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档