spring dubbo集成(nacos dubbo)

springBoot整合dubbo集成 传统Spring整合dubbo,需要繁琐的编写一堆堆的*.xml配置文件 而springBoot整合dubbo后,不在需要写*.xml,通过jar包引用,完 成整合,通过注解的形式完成配置。提高我们的开发效率目录结构1服务层生产者开发(hs-ldm-server-service)1.1添加dubbo依赖包<dependencies><dependency><groupId>org.ap

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

springBoot整合dubbo集成

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

目录结构
在这里插入图片描述
1 服务层生产者开发(hs-ldm-server-service)
1.1添加dubbo依赖包

<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服务类

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 服务启动类

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

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

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层服务

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启动服务

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.net/127003.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • android 游戏引擎_最简单的游戏引擎

    android 游戏引擎_最简单的游戏引擎随着Android系统的使用越来越广泛,了解一下Android平台下的游戏引擎就非常有必要。而同时因为基于Intelx86的移动设备越来越多,我也非常关注支持x86的移动游戏引擎。然而就目前为止游戏引擎的数量已经非常之多,每个引擎都有不同的特征、价格、成熟度等。通过一些调研之后,我发现有非常多的游戏引擎可用于开发运行在android移动设备端的游戏,其中有些还支持x86系统,另外还有些通过简单的修

    2026年1月27日
    2
  • window安装JAVA环境

    window安装JAVA环境java环境安装包:JDK11.0.2和Tomcat7.0.92JDK1.8.01、下载JDK下载JDK:JDK官网点击安装,然后点击下一步,知道安装完毕。注:下载的JDK注意要和自己的系统匹配,安装过程中如果不想使用默认安装路径,可以自行配置。配置环境变量:安装完成后,右击"我的电脑",点击"属性",选择"高级系统设置";选择"高级"选项卡,点击"环境变量…

    2022年7月16日
    19
  • CTK通用插件使用

    CTK通用插件使用1.把release版本和debug版本的CTK库文件拷贝到QT的bin目录下2.把release版本下的CTKWidgetsPlugins拷贝到qtplugins目录下Qtdesigner中就可以看到集成的CTK通用插件了3.建立一个qtgui程序,设置ctk的链接目录设置CTK的dll目录设置CTK的头文件目录设置CTK的lib路径4….

    2022年6月5日
    33
  • YUV图像合成原理[通俗易懂]

    YUV图像合成原理[通俗易懂]YUV图像合成原理引言:在视频监控中最常用的就是图像拼接和字符叠加,25FPS的视频流,如果每隔40MS就从各个通道中取一幅图像来合成,则可以看到一个实时的合成视频。合成的过程也就是原始图像的拼接、缩放的过程,本文主要阐述UV分开存储的YUV420图像拼接的过程,实现下图的效果。一、原图图像格式1、图像常用的格式有两种RGB和YUV(1)YUV是

    2022年7月16日
    17
  • 联合概率,边际概率,条件概率的区别_非条件概率和边际概率

    联合概率,边际概率,条件概率的区别_非条件概率和边际概率一时忘了联合概率、边际概率、条件概率是怎么回事,回头看看。某离散分布:联合概率、边际概率、条件概率的关系:其中,Pr(X=x,Y=y)为“XY的联合概率”;Pr(X=x)为“X的边际概率”;Pr(X=x|Y=y)为“X基于Y的条件概率”;Pr(Y=y)为“Y的边际概率”;从上式子中可以看到:Pr(X=x,Y=y)=Pr(X=x|Y=y)*Pr(Y=y)

    2022年10月18日
    5
  • ubuntu安装新字体命令_安装字体命令

    ubuntu安装新字体命令_安装字体命令ubuntu里新装的terminator里,字体实在是不忍直视。尤其是字母i,跟别的字母挤在一起,根本就看不清楚。所以特意下载了一个苹果的Monaco字体来代替。linux系统的字体文件放在/usr/share/fonts/目录以及用户的~/.fonts和~/.local/share/fonts目录下,第一个位置为系统所用用户共享,将字体安装到这个目录需要管理员权限;后面两个位置则为当前登陆用…

    2022年9月23日
    4

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号