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)
上一篇 2022年4月17日 上午9:00
下一篇 2022年4月17日 上午9:00


相关推荐

  • 滑环密封防水等级

    滑环密封防水等级默孚龙生产各种高密封滑环 水下密封 IP68 滑环图纸方案 300 多种 滑环密封包括安装在摩擦侧的标准 O 形环密封和抗摩擦密封 减摩密封圈一般是由实心聚四氟乙烯定制的摩擦密封圈 他还可以定制适合你的密封圈形状 与之匹配的凹槽深度略大于标准尺寸 因为无论是 O 型圈还是滑块密封圈都会由凹槽来维持 这意味着需要使用特殊的密封工具或采用加热膨胀的方法将滑块密封圈延伸到位 冷却状态的尺寸恢复正常 滑环密封环适用于压力高达 400 巴的液压应用 是挡圈的紧凑替代品 由于它们的低摩擦 它们在气动系统的活塞杆和气缸密封圈中也有特殊用

    2026年3月19日
    1
  • 韦东山移植学习—-007 dis文件(反汇编分析)

    韦东山移植学习—-007 dis文件(反汇编分析)33f80000 e3a00453 mov r0 0x 33f80000 来源于链接文件 ldsboot elf fileformatel littlearmDis text 33f80000 lt start gt a 关看门狗 33f80000 e3a

    2026年3月19日
    2
  • Java学习之反射篇

    Java学习之反射篇0x00前言今天简单来记录一下,反射与注解的一些东西,反射这个机制对于后面的java反序列化漏洞研究和代码审计也是比较重要。0x01反射机制概述Java反射是Java非

    2021年12月12日
    52
  • autoit3转换php,AutoIt3处理字符串和数组

    autoit3转换php,AutoIt3处理字符串和数组1 字符串和数组应用 include 字符串的大小写转换 str01 abdcefg result01 StringUpper str01 result02 StringLower result01 MsgBox 64 大小写转换结果 大写 amp result01 amp Chr 13 amp 小写 amp result02

    2025年12月15日
    7
  • mysql数据库多表查询练习题[通俗易懂]

    mysql数据库多表查询练习题[通俗易懂]下面练习题中设计四个表。分别为:dept表emp表salgrade表tbyear表1.查出至少有一个员工的部门。显示部门编号、部门名称、部门位置、部门人数。SELECTd.deptno,d.dname,d.loc,e1.`count(*)`FROMdeptdINNERJOIN(SELECTdeptno,COUNT(*)FROMemp…

    2022年5月21日
    58
  • ewebeditor漏洞利用汇总[通俗易懂]

    ewebeditor漏洞利用汇总[通俗易懂]ewebeditor漏洞利用汇总2007年09月24日星期一22:43inurl:ewebeditor现在eWebSoft在线编辑器用户越来越多,危害就越来越大~首先介绍编辑器的一些默认特征:…

    2022年7月14日
    38

发表回复

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

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