Spring Boot整合dubbo+Nacos实战(二)

2023-10-27


前言

nacos的实战在前面一章已经介绍到
Spring Cloud Alibaba+Nacos的介绍与实战(一)
以及几种注册中心的区别介绍
几种常见的注册中心以及区别

新建父工程cloud-alibaba-demo

源码已经上传到gitee上
地址:https://gitee.com/culzb/cloud-alibaba-demo
在这里插入图片描述
配置文件pom.xml
管理子工程jar版本

<modules>
        <module>gtw</module>
        <module>demo-service</module>
        <module>dubbo-demo-service</module>
    </modules>

    <properties>
        <java.version>1.8</java.version>
        <spring-cloud.version>Greenwich.SR1</spring-cloud.version>
    </properties>

    <dependencyManagement>
        <dependencies>
            <dependency>
                <groupId>org.springframework.cloud</groupId>
                <artifactId>spring-cloud-dependencies</artifactId>
                <version>${spring-cloud.version}</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
            <dependency>
                <groupId>org.springframework.cloud</groupId>
                <artifactId>spring-cloud-alibaba-dependencies</artifactId>
                <version>0.9.0.RELEASE</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter-test</artifactId>
                <version>2.2.1.RELEASE</version>
                <scope>test</scope>
            </dependency>
            <!--  nacos注册中心-->
            <dependency>
                <groupId>org.springframework.cloud</groupId>
                <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
                <version>0.2.1.RELEASE</version>
            </dependency>
        </dependencies>
    </dependencyManagement>

新建子工程dubbo-demo-service

当前子工程相是被调用的服务,也就是说服务提供者。
dubbo中作为provider
在这里插入图片描述
然后引入相关jar包
配置pom.xml

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
	<modelVersion>4.0.0</modelVersion>
	<parent>
		<groupId>com.cuizb</groupId>
		<artifactId>cloud-alibaba-demo</artifactId>
		<version>1.0</version>
	</parent>
	<artifactId>dubbo-demo-service</artifactId>
	<version>1.0</version>
	<name>dubbo-demo-service</name>
	<description>Demo project for Spring Boot</description>
	<properties>
		<java.version>1.8</java.version>
	</properties>
	<dependencies>
		<!-- Dubbo依赖 -->
		<dependency>
			<groupId>org.apache.dubbo</groupId>
			<artifactId>dubbo-spring-boot-starter</artifactId>
			<version>2.7.0</version>
		</dependency>
		<dependency>
			<groupId>org.apache.dubbo</groupId>
			<artifactId>dubbo</artifactId>
			<version>2.7.0</version>
		</dependency>
		<!-- Nacos依赖 -->
		<dependency>
			<groupId>org.apache.dubbo</groupId>
			<artifactId>dubbo-registry-nacos</artifactId>
			<version>2.7.1</version>
		</dependency>
		<dependency>
			<groupId>com.alibaba.nacos</groupId>
			<artifactId>nacos-client</artifactId>
			<version>1.0.0</version>
		</dependency>

		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-web</artifactId>
		</dependency>

		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-test</artifactId>
			<scope>test</scope>
		</dependency>
	</dependencies>

	<build>
		<plugins>
			<plugin>
				<groupId>org.springframework.boot</groupId>
				<artifactId>spring-boot-maven-plugin</artifactId>
			</plugin>
		</plugins>
	</build>

</project>

然后创建api接口,配置dubbo扫描的包路径,会将指定扫描的包路径中的所有接口注册到nacos中。

  • 注意
    创建的api接口实现类上一定要加上@service,引入包路径为:import org.apache.dubbo.config.annotation.Service;

    否则在启动时控制台会出现[DUBBO] No Spring Bean annotating Dubbo's @Service was found under package[com.cuizb.dubbo.demoservice.api]
    在这里插入图片描述

我创建了一个api接口和一个api接口实现类
DubboDemoService

package com.cuizb.dubbo.demoservice.api;
/**
 * @Author cuizb
 * @Date 2022-03-19 18:09:31
 * @Desc *
 */
public interface DubboDemoService {
    String hello(String name);
}

DubboDemoServiceImpl

package com.cuizb.dubbo.demoservice.controller;

import com.cuizb.dubbo.demoservice.api.DubboDemoService;
import org.apache.dubbo.config.annotation.Service;

/**
 * @Author cuizb
 * @Date 2022-03-20 22:07:15
 * @Desc *
 */
@Service
public class DubboDemoServiceImpl implements DubboDemoService {
    @Override
    public String hello(String name) {
        return "hello " + name + "i am dubbo demoService!";
    }
}

最后配置dubbo以及nacos相关信息
application.properties

server.port=8702
spring.application.name=dubbo-demo-service


# 配置服务信息
dubbo.application.name=dubbo-demo-service
## 禁用QOS同一台机器可能会有端口冲突现象
#dubbo.qos-enable=false
#dubbo.qos-accept-foreign-ip=False
# 配置注册中心

#spring.cloud.nacos.discovery.server-addr=127.0.0.1:8848
dubbo.registry.address=nacos://127.0.0.1:8848
# 设置协议-协议由提供方指定消费方被动接受
dubbo.protocol.name=dubbo
dubbo.protocol.port=7702
dubbo.scan.base-packages=com.cuizb.dubbo.demoservice.api
# 解决Bean重复定义问题
spring.main.allow-bean-definition-overriding=true

启动类加上@EnableDubbo

package com.cuizb.dubbo.demoservice;

import org.apache.dubbo.config.spring.context.annotation.EnableDubbo;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;


@EnableDubbo //开启Dubbo的注解支持
//@EnableDiscoveryClient
@SpringBootApplication
public class DubboDemoServiceApplication {
	public static void main(String[] args) {
	SpringApplication.run(DubboDemoServiceApplication.class, args);
	}
}

新建子工程gtw

我没有按照dubbo那样分为provider和consumer区分工程,我按照项目习惯将网关作为服务消费者,其他服务作为服务提供者。
由于我沿用了上一章节的网关工程,所以我会将pom.xml中的

<!--		<dependency>-->
<!--			<groupId>org.springframework.cloud</groupId>-->
<!--			<artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>-->
<!--		</dependency>-->

注释掉了,防止jar冲突。以及config中也不需要注入RestTemplate的bean了。
在这里插入图片描述
首先引入jar包
pom.xml

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
	<modelVersion>4.0.0</modelVersion>
	<parent>
		<groupId>com.cuizb</groupId>
		<artifactId>cloud-alibaba-demo</artifactId>
		<version>1.0</version>
	</parent>
	<groupId>com.cuizb.cloud.alibaba</groupId>
	<artifactId>gtw</artifactId>
	<version>1.0</version>
	<name>gtw</name>
	<description>Demo project for Spring Boot</description>
	<properties>
		<java.version>1.8</java.version>
	</properties>
	<dependencies>
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-web</artifactId>
		</dependency>

		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-test</artifactId>
			<scope>test</scope>
		</dependency>
<!--		<dependency>-->
<!--			<groupId>org.springframework.cloud</groupId>-->
<!--			<artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>-->
<!--		</dependency>-->

		<!-- Dubbo依赖 -->
		<dependency>
			<groupId>org.apache.dubbo</groupId>
			<artifactId>dubbo-spring-boot-starter</artifactId>
			<version>2.7.0</version>
		</dependency>
		<dependency>
			<groupId>org.apache.dubbo</groupId>
			<artifactId>dubbo</artifactId>
			<version>2.7.0</version>
		</dependency>
		<!-- Nacos依赖 -->
		<dependency>
			<groupId>org.apache.dubbo</groupId>
			<artifactId>dubbo-registry-nacos</artifactId>
			<version>2.7.1</version>
		</dependency>
		<dependency>
			<groupId>com.alibaba.nacos</groupId>
			<artifactId>nacos-client</artifactId>
			<version>1.0.0</version>
		</dependency>
		<dependency>
			<groupId>com.cuizb</groupId>
			<artifactId>dubbo-demo-service</artifactId>
			<version>1.0</version>
			<scope>compile</scope>
		</dependency>
	</dependencies>

	<build>
		<plugins>
			<plugin>
				<groupId>org.springframework.boot</groupId>
				<artifactId>spring-boot-maven-plugin</artifactId>
			</plugin>
		</plugins>
	</build>

</project>

网关入口类
GtwServiceImpl

package com.cuizb.cloud.alibaba.gtw.controller;

import com.cuizb.dubbo.demoservice.api.DubboDemoService;
import org.apache.dubbo.config.annotation.Reference;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;

/**
 * @Author cuizb
 * @Date 2022-03-19 18:12:16
 * @Desc *
 */
@RestController
public class GtwServiceImpl {

//    @Autowired
//    private RestTemplate restTemplate;
//
//    @GetMapping("/hello")
//    public String hello(@RequestParam("name") String name) {
//        System.out.println(name);
//        return restTemplate.getForObject("http://demo-service/hello?name=" + name , String.class);
//
//    }

    // Dubbo远程调用注解
    @Reference
    private DubboDemoService dubboDemoService;

    @GetMapping("/hello")
    public String hello(@RequestParam String name) {
        return dubboDemoService.hello(name);
    }

}

注意:
注入注解是dubbo中@Reference

dubbo和nacos配置信息

server.port=8705
spring.application.name=dubbo-gtw


# 配置服务信息
dubbo.application.name=dubbo-gtw
# 禁用QOS同一台机器可能会有端口冲突现象
dubbo.qos-enable=false
dubbo.qos-accept-foreign-ip=false
# 配置注册中心
dubbo.registry.address=nacos://127.0.0.1:8848
# 设置协议-协议由提供方指定消费方被动接受
dubbo.protocol.name=dubbo
dubbo.protocol.port=7705
dubbo.consumer.timeout=3000
# 解决Bean重复定义问题
spring.main.allow-bean-definition-overriding=true

启动类加上@EnableDubbo

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

}

启动工程

首先启动服务提供者dubbo-demo-service,然后启动服务消费者gtw
查看nacos
在这里插入图片描述

测试

输入地址:http://localhost:8705/hello?name=cuizb1
在这里插入图片描述

如果先启动消费者会出现启动报错

Caused by: java.lang.IllegalStateException: Failed to check the status of the service com.cuizb.dubbo.demoservice.api.DubboDemoService. No provider available for the service com.cuizb.dubbo.demoservice.api.DubboDemoService from the url nacos://127.0.0.1:8848/org.apache.dubbo.registry.RegistryService?application=dubbo-gtw&default.generic=false&default.timeout=3000&dubbo=2.0.2&generic=false&interface=com.cuizb.dubbo.demoservice.api.DubboDemoService&methods=hello&pid=53247&qos.enable=false&register.ip=192.168.1.5&release=2.7.0&side=consumer&timestamp=1647833584728 to the consumer 192.168.1.5 use dubbo version 2.7.0
	at org.apache.dubbo.config.ReferenceConfig.createProxy(ReferenceConfig.java:393) ~[dubbo-2.7.0.jar:2.7.0]
	at org.apache.dubbo.config.ReferenceConfig.init(ReferenceConfig.java:301) ~[dubbo-2.7.0.jar:2.7.0]
	at org.apache.dubbo.config.ReferenceConfig.get(ReferenceConfig.java:225) ~[dubbo-2.7.0.jar:2.7.0]
	at org.apache.dubbo.config.spring.beans.factory.annotation.ReferenceAnnotationBeanPostProcessor$ReferenceBeanInvocationHandler.init(ReferenceAnnotationBeanPostProcessor.java:162) ~[dubbo-2.7.0.jar:2.7.0]
	at org.apache.dubbo.config.spring.beans.factory.annotation.ReferenceAnnotationBeanPostProcessor$ReferenceBeanInvocationHandler.access$100(ReferenceAnnotationBeanPostProcessor.java:146) ~[dubbo-2.7.0.jar:2.7.0]
	at org.apache.dubbo.config.spring.beans.factory.annotation.ReferenceAnnotationBeanPostProcessor.buildInvocationHandler(ReferenceAnnotationBeanPostProcessor.java:140) ~[dubbo-2.7.0.jar:2.7.0]
	at org.apache.dubbo.config.spring.beans.factory.annotation.ReferenceAnnotationBeanPostProcessor.buildProxy(ReferenceAnnotationBeanPostProcessor.java:122) ~[dubbo-2.7.0.jar:2.7.0]
	at org.apache.dubbo.config.spring.beans.factory.annotation.ReferenceAnnotationBeanPostProcessor.doGetInjectedBean(ReferenceAnnotationBeanPostProcessor.java:116) ~[dubbo-2.7.0.jar:2.7.0]
	at org.apache.dubbo.config.spring.beans.factory.annotation.ReferenceAnnotationBeanPostProcessor.doGetInjectedBean(ReferenceAnnotationBeanPostProcessor.java:49) ~[dubbo-2.7.0.jar:2.7.0]
	at org.apache.dubbo.config.spring.beans.factory.annotation.AnnotationInjectedBeanPostProcessor.getInjectedObject(AnnotationInjectedBeanPostProcessor.java:340) ~[dubbo-2.7.0.jar:2.7.0]
	at org.apache.dubbo.config.spring.beans.factory.annotation.AnnotationInjectedBeanPostProcessor$AnnotatedFieldElement.inject(AnnotationInjectedBeanPostProcessor.java:520) ~[dubbo-2.7.0.jar:2.7.0]
	at org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:116) ~[spring-beans-5.2.1.RELEASE.jar:5.2.1.RELEASE]
	at org.apache.dubbo.config.spring.beans.factory.annotation.AnnotationInjectedBeanPostProcessor.postProcessPropertyValues(AnnotationInjectedBeanPostProcessor.java:128) ~[dubbo-2.7.0.jar:2.7.0]

在这里插入图片描述
JVM内存泄漏和内存溢出的原因
JVM常用监控工具解释以及使用
Redis 常见面试题(一)
ClickHouse之MaterializeMySQL引擎(十)
三种实现分布式锁的实现与区别
线程池的理解以及使用

号外!号外!

最近面试BAT,整理一份面试资料,覆盖了Java核心技术、JVM、Java并发、SSM、微服务、数据库、数据结构等等。想获取吗?如果你想提升自己,并且想和优秀的人一起进步,感兴趣的朋友,可以在扫码关注下方公众号。资料在公众号里静静的躺着呢。。。

  • 喜欢就收藏
  • 认同就点赞
  • 支持就关注
  • 疑问就评论

一键四连,你的offer也四连

————————————————————————————————————————————————————————————————

本文作者:Java技术债务
原文链接:https://www.cuizb.top/myblog/article/1647833843
版权声明: 本博客所有文章除特别声明外,均采用 CC BY 3.0 CN协议进行许可。转载请署名作者且注明文章出处。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Spring Boot整合dubbo+Nacos实战(二) 的相关文章

  • 使用 GWT CellTableBuilder 构建树表

    Is it possible to build a tree table like this http www sencha com examples ExamplePlace basictreegrid with the new Cell
  • Grails 2.3.0 自动重新加载不起作用

    我最近将我们的项目升级到 grails 2 3 0 一切工作正常 除了每当我更改代码时自动重新加载都无法工作的问题 这包括所有项目工件 控制器 域 服务 gsps css 和 javascript 文件 我的旧版本 grails 可以正常工
  • 为什么 java 编译器不报告 Intellij 中多播表达式的未经检查的强制转换警告?

    为什么下面的代码没有报告 Intellij IDEA 的未经检查的警告jdk 1 8 0 121自从Supplier
  • 如何在 JSP 中导入类?

    我是一个完全的JSP初学者 我正在尝试使用java util List在 JSP 页面中 我需要做什么才能使用除以下类之外的类java lang 使用以下导入语句进行导入java util List 顺便说一句 要导入多个类 请使用以下格式
  • Condition 接口中的 signalAll 与对象中的 notificationAll

    1 昨天我才问过这个问题条件与等待通知机制 https stackoverflow com questions 10395571 condition vs wait notify mechanism 2 我想编辑相同的内容并在我的问题中添加
  • 主线程如何在该线程之前运行?

    我有以下代码 public class Derived implements Runnable private int num public synchronized void setA int num try Thread sleep 1
  • 记录骆驼路线

    我的项目中有几个 Camel 上下文 如果可能的话 我想以逆向工程方式记录路线 因为我们希望保持与上下文相关的文档最新 最好的方法是什么 我们倾向于预先实际设计路线 并使用来自EIP book http www eaipatterns co
  • 在java中实现你自己的阻塞队列

    我知道这个问题之前已经被问过并回答过很多次了 但我只是无法根据互联网上找到的示例找出窍门 例如this http tutorials jenkov com java concurrency blocking queues html or t
  • 如何获取 WebElement 的父级[重复]

    这个问题在这里已经有答案了 我试过了 private WebElement getParent final WebElement webElement return webElement findElement By xpath 但我得到
  • 隐式超级构造函数 Person() 未定义。必须显式调用另一个构造函数?

    我正在开发一个项目 但收到错误 隐式超级构造函数 Person 未定义 必须显式调用另一个构造函数 我不太明白它 这是我的人物课程 public class Person public Person String name double D
  • Git 无法识别重命名和修改的包文件

    我有一个名为的java文件package old myfile java 我已经通过 git 提交了这个文件 然后我将我的包重命名为new所以我的文件在package new myfile java 我现在想将此文件重命名 和内容更改 提交
  • Java 数组的最大维数

    出于好奇 在 Java 中数组可以有多少维 爪哇language不限制维数 但是JavaVM规范将维度数限制为 255 例如 以下代码将无法编译 class Main public static void main String args
  • 在 Spring Boot Actuator 健康检查 API 中启用日志记录

    我正在使用 Spring boot Actuator APIproject https imobilenumbertracker com 拥有一个健康检查端点 并通过以下方式启用它 management endpoints web base
  • 如何在 Quartz 调度程序中每 25 秒运行一次?

    我正在使用 Java 的 Quartz Scheduling API 你能帮我使用 cron 表达式每 25 秒运行一次吗 这只是一个延迟 它不必总是从第 0 秒开始 例如 序列如下 0 00 0 25 0 50 1 15 1 40 2 0
  • JVM:是否可以操作帧堆栈?

    假设我需要执行N同一线程中的任务 这些任务有时可能需要来自外部存储的一些值 我事先不知道哪个任务可能需要这样的值以及何时 获取速度要快得多M价值观是一次性的而不是相同的M值在M查询外部存储 注意我不能指望任务本身进行合作 它们只不过是 ja
  • 解决错误javax.mail.AuthenticationFailedException

    我不熟悉java中发送邮件的这个功能 我在发送电子邮件重置密码时遇到错误 希望你能给我一个解决方案 下面是我的代码 public synchronized static boolean sendMailAdvance String emai
  • 如何在Java中正确删除数组[重复]

    这个问题在这里已经有答案了 我刚接触 Java 4 天 从我搜索过的教程来看 讲师们花费了大量精力来解释如何分配二维数组 例如 如下所示 Foo fooArray new Foo 2 3 但我还没有找到任何解释如何删除它们的信息 从内存的情
  • Java的-XX:+UseMembar参数是什么

    我在各种地方 论坛等 看到这个参数 并且常见的答案是它有助于高并发服务器 尽管如此 我还是找不到 sun 的官方文档来解释它的作用 另外 它是Java 6中添加的还是Java 5中存在的 顺便说一句 许多热点虚拟机参数的好地方是这一页 ht
  • Android - 9 补丁

    我正在尝试使用 9 块图片创建一个新的微调器背景 我尝试了很多方法来获得完美的图像 但都失败了 s Here is my 9 patch 当我用Draw 9 patch模拟时 内容看起来不错 但是带有箭头的部分没有显示 或者当它显示时 这部
  • 启动Java项目时发生类冲突:ClassMetadataReadingVisitor将接口org.springframework.asm.ClassVisitor作为超类

    我正在使用最新的Spring框架版本 3 2 2 RELEASE 开发一个Java Web项目 但是现在项目启动时遇到了问题 详细错误是 java lang IncompleteClassChangeError 类 org springfr

随机推荐

  • 《计算机网络-运输层概述》

    5 1运输层协议概述 5 1 1进程之间的通信 运输层向他上面的应用层提供通信服务 属于面向通信的最高层和用户功能的最底层 当网络边缘部分两台主机通信时 只有主机的协议栈才有运输层 而网络的核心部分中的路由器转发分组时都只用到了下三层的功能
  • Python数据分析-pandas基础-2-DataFrame基础操作

    一 索引 1 基础索引方式 import pandas as pd df pd DataFrame col1 1 2 3 4 5 col2 6 7 8 9 0 df gt col1 col2 0 1 6 1 2 7 2 3 8 3 4 9
  • linux0.12内核的内存组织和进程结构

    进程结构 Linux0 12中的每个进程都有如下的结构 在gdt中占有两项 一项是tss段描述符 一项是ldt段描述符 在task数组中占有一项 指向一页物理内存 该物理内存低端是进程控制块task struct 里面包括tss段和ldt段
  • crmeb 标准版window+phpstudy8安装教程(二)

    标准版window phpstudy8安装教程 二 安装系统 程序安装 1 在浏览器上输入域名 http v4 crmeb com 域名 进入安装页面 点击接受 2 检查环境是否都正确 确认无误后 点击下一步 如有X号等错误提示 请根据提示
  • PyInstaller编译后,如何不出现执行exe文件时弹出的命令行窗口

    如果你使用PyInstaller将Python脚本编译为可执行文件 exe 默认情况下会在运行时显示一个命令行窗口 如果你想要隐藏命令行窗口并使程序在后台静默运行 你可以采用以下方法之一 使用 noconsole选项编译 在使用PyInst
  • 路由选择协议(一) RIP协议

    在介绍路由协议 RIP OSPF BGP 之前会向大家介绍补充一些基本的概念 以便能够更容易的理解本文 废话不多说我们开始 一 自治系统 自治系统 Autonomous system 通俗的讲就是我们把全球互联网分成若干个区域 每个区域由一
  • 【论文精读】KD-MVS

    今天读的是发表在ECCV2022上的自监督MVS文章 作者来自于旷视科技和清华大学 文章链接 arxiv 代码链接 https github com megvii research KD MVS 目录 Abstract 1 Introduc
  • Ubuntu20.04.6+ros2 foxy配置rosdepc

    问题 在根据古月居ros2教程工作空间一节时 在安装自动依赖 rosdepc install i from path src rosdistro humble y 出现问题 ERROR the following packages stac
  • 一个超强 Android 进阶路线知识图谱

    早上好 我是 AndroidGuider 公众号 Android 指南 专注于推荐 GitHub 上 Android 有用有趣的项目 挖掘开源的价值 欢迎关注 今天推荐一个非常优质的项目 Android 最全进阶路线知识图谱 干货资料 作者
  • 正定矩阵

    转 https www jianshu com p e969a50bb0a5 utm campaign maleskine utm content note utm medium seo notes utm source recommend
  • Oracle SQL语句进行新建用户

    哈喽大家好 随着科技的发达 国家的强大 人类智慧的增长 我们的身边也越来越多所谓的人工智能 但是他们所谓的智能也是我们人类去进行编程代码 进行设定功能和各种精密的传感器来进行的 自然软件的开发也就成了不可缺少的重要部分 下面我们要讲的是or
  • 像梦一样

    近日 听说的小学同学的父亲去世了 好多年不见 印象中还是小学时的样子 没想到今年去世了 转念一想 跟我父亲差不多的年纪 还没有老啊 就已经到了有人离开的年纪啦 回头一想 好久没给我的父亲打电话了 上次好好打电话还是去年有宝宝的时候吧 最近半
  • 信息技术导论论文

    摘要 计算机系统对存储器的容量 速度和价格这三个基本性能指标都有一定的要求 存储容量应确保各种应用的需要 存储器速度应尽量与CPU的速度相匹配并支持I O操作 存储器的价格应比较合理 但是存储器的速度越快 则每位的价格就越高 存储器的容量越
  • kafka 一个topic 被多个group.id 自动创建

    多遍看关于kafka 的原理 group与partition 与topic 的关系 自我感觉理解没问题了 写了一个netty结合kafka 5秒发送一个心跳 拉取一次消息 得到相应的record 读取记录提交offset 我用的是 两个gr
  • Xadmin(踩坑)——cannot import name ‘pretty_name‘

    问题 ImportError cannot import name pretty name 解决问题 修改前 修改后
  • maven package Failed to collect dependencies at com.study:*****:jar:1.1-SNAPSHOT

    聚合父pom C集成A pom B pom 而A pom又依赖B pom 此时package打包A 报错Failed to collect dependencies at com study jar 1 0 SNAPSHOT 解决 先ins
  • Spring -- Spring boot Spring mvc 的区别

    spring boot与spring mvc的区别是什么 知乎如题https www zhihu com question 64671972 作者 潜龙勿用 链接 https www zhihu com question 64671972
  • kubectl get csr/node 提示:bash: kubectl: 未找到命令...

    报错信息 root master kubectl get csr 查看节点请求 bash kubectl 未找到命令 root master kubectl get node 查看集群节点 bash kubectl 未找到命令 解决方法 查
  • 关于Pictureselector相册全白、不显示图片的问题(附GlideEngine代码)

    关于Pictureselector相册全白 不显示图片的问题 文末附GlideEngine代码 前些日子要做一个用到相机相册剪裁照片的项目 用了网上比较火比较新的Pictureselector 发现相册能识别并且打开 但是整个相册预览都是空
  • Spring Boot整合dubbo+Nacos实战(二)

    文章目录 前言 新建父工程cloud alibaba demo 新建子工程dubbo demo service 新建子工程gtw 启动工程 测试 前言 nacos的实战在前面一章已经介绍到 Spring Cloud Alibaba Naco