- 博客(213)
- 资源 (3)
- 收藏
- 关注
原创 MQTT 与 AMQP
它专为资源有限的设备和低带宽、高延迟或不稳定的网络而设计,非常适合需要小代码占用的应用场景(例如,机器之间通信或物联网)。AMQP 1.0 版本中的帧由一个 8 字节的固定头部、一个可选的扩展头部和一个长度可变的二进制有效载荷组成。MQTT 的简单之处在于其协议命令很少。集群中的每个节点都负责处理 MQTT 连接和消息传输,使其具备强大的水平扩展能力,能够应对连接设备和消息数量的快速增长。AMQP 是一种基于 TCP/IP 的二进制协议,它在客户端和 Broker 之间建立可靠的、持久的、面向流的连接。
2024-04-30 09:43:49 813 1
原创 ReentrantLock与Condition
ReentrantLock对象可以同时绑定多个 Condition对象。在 synchronized 中,锁对象的 wait()跟它的 notify()或者 notifyAll()方法配合可以实现一个隐含的条件,如果要和多于一个的条件关联的时候,就不得不额外添加一个锁;而ReentrantLock则无须这样做,多次调用 newCondition()方法 即可。参考:https://www.cnblogs.com/xiaoxi/p/7651360.html。
2024-04-26 17:18:26 198
原创 gRPC - Google远程过程调用(Google Remote Procedure Call,gRPC)
GPB与XML、JSON编码类似,也是一种编码方式,但不同的是,它是一种二进制编码,性能好,效率高。huawei-telemetry.proto文件中data_gpb字段内容需要相应的业务proto文件进行解码,由huawei-telemetry.proto文件中的sensor_path字段标识对应哪个具体的业务proto文件,例如,当sensor_path取值为huawei-ifm:ifm/interfaces/interface时,其数据结构定义在huawei-ifm.proto文件中。
2024-02-02 09:57:08 447
原创 Node.js多版本管理切换
nodejs多版本管理软件:https://github.com/coreybutler/nvm-windows。
2023-12-17 23:23:21 873 2
原创 springMVC中过滤器抛出异常,自定义异常捕获
Spring Boot全局异常处理@RestControllerAdvice只会捕获所有Controller层抛出的异常,在filter当中抛出的异常GlobalExceptionHandler类是感知不到的,所以在filter当中抛出的异常最终会被Spring框架自带的全局异常处理类BasicErrorController捕获。附:https://blog.csdn.net/m0_37731470/article/details/116754395。
2023-08-17 10:56:53 779
原创 MySQL分支判断
if(1,2,3)判断1的真假真,运算2假,运算3casewhen 条件1(由字段组成的条件) then …when 条件2 then …else …endcase 数据(字段)when 值1 then …when 值2 then …else …end。
2023-03-10 22:28:18 217 1
原创 接口默认方法与继承中同时出现相同的函数签名
(2) 如果无法依据第一条进行判断,那么子接口的优先级更高:函数签名相同时,优先选择拥有最具体实现的默认方法的接口,如果B 继承了A,那么B 就比A 更加具体。(3) 最后,如果还是无法判断,那么继承了多个接口的类必须通过显式覆盖和调用期望的方法,显式地选择使用哪一个默认方法的实现。如果一个类使用相同的函数签名从多个地方(比如另一个类或接口)继承了方法,那么通过三条规则可以进行判断。(1) 类中的方法优先级最高。类或父类中声明的方法的优先级高于任何声明为默认方法的优先级。
2023-03-10 15:43:51 152
原创 Navicat Premium (Windows) version 16.1.6安装记录
如果没法安装激活记得修改版本为English版本,如果还是失败,则修改自己电脑时间为2022年5月1日。软件下载:https://www.navicat.com/
2023-01-12 16:38:25 893
原创 navicat无死角清除卸载
计算机\HKEY_CURRENT_USER\SOFTWARE\Classes\CLSID。计算机\HKEY_CURRENT_USER\SOFTWARE\PremiumSoft。展开CLSID文件夹,删除所有目录下的Info。删除PremiumSoft整个文件夹及子文件。
2023-01-12 16:17:47 777
原创 centos7 更新时间
1、下载ntpdate工具,使用该工具可以与时间服务器同步。yum -y install ntp ntpdate2、设置系统时间与网络时间同步。ntpdate cn.pool.ntp.org3.将系统时间写入硬件时间 。hwclock --systohc使用timedatectl 查看当前时区timedatectl status查看中国时区的完整名称timedatectl list-timezones |grep Shanghai修改为中国时区timedatectl set-timezone
2022-12-08 13:36:17 1146
原创 BeanFactory与FactoryBean
根据 Bean 定义,工厂将返回包含对象的独立实例(原型设计模式)或单个共享实例(单例设计模式的优越替代方案,其中实例是工厂范围内的单例)。通常,BeanFactory 将加载存储在配置源(例如 XML 文档)中的 Bean 定义,并使用 org.springframework.beans 包来配置 bean。此工厂实例中的 Bean 应该覆盖任何父工厂中同名的 Bean。这种方法的要点是,BeanFactory 是应用程序组件的中央注册表,并集中配置应用程序组件(例如,单个对象不再需要读取属性文件)。
2022-11-07 23:43:58 245
原创 轻量级git仓库 centos部署配置gogs代码仓库
使用Go语言开发使得Gogs能够通过独立的二进制分发,并且支持Go语言支持的 所有平台,包括Linux、Mac OS X、Windows以及 RM平台。Gogs可以说就是简单版本的github,可以提供代码和文档的存放,可以满足基本团队需求。2.在网页配置完信息后,要关闭gogs一次,再打开即可。参考:https://www.cnblogs.com/rxysg/p/15683699.html。若后面更改配置,修改文件:gogs/custom/conf/app.ini。2.登陆后创建数据库。
2022-10-31 11:45:20 367
原创 SCADA系统
在工业现场一般都是采用Modbus RTU协议,一般而言,大家说的基于串口通信的Modbus通信协议都是指Modbus RTU通信协议。与Modbus RTU协议相比较,Modbus TCP协议则是在RTU协议上加一个MBAP报文头,并且由于TCP是基于可靠连接的服务,RTU协议中的CRC校验码就不再需要,所以在Modbus TCP协议中是没有CRC校验码的,所以就常用一句比较通俗的话来说:Modbus TCP协议就是Modbus RTU协议在前面加上五个0以及一个6,然后去掉两个CRC校验码字节就OK。
2022-10-31 11:41:54 315
原创 linux之日志查找操作
跳到当前行的最后一个字符 :在当前行按“$”键,即“shift+4”。跳到文本的最后一行:按“G”,即“shift+g”。跳到文本的第一行的第一个字符:按两次“g”。跳到当前行的第一个字符:在当前行按“0”。
2022-10-15 11:10:13 1016
原创 轻量级git仓库 centos部署配置gogs代码仓库
使用Go语言开发使得Gogs能够通过独立的二进制分发,并且支持Go语言支持的 所有平台,包括Linux、Mac OS X、Windows以及 RM平台。Gogs可以说就是简单版本的github,可以提供代码和文档的存放,可以满足基本团队需求。2.在网页配置完信息后,要关闭gogs一次,再打开即可。参考:https://www.cnblogs.com/rxysg/p/15683699.html。若后面更改配置,修改文件:gogs/custom/conf/app.ini。2.登陆后创建数据库。
2022-10-13 11:48:52 359
原创 flowable流程引擎介绍与使用
https://www.cnblogs.com/xfeiyun/p/16185713.htmlhttps://www.ngui.cc/article/show-437622.htmlflowable的ui登入界面:admin/test
2022-07-06 17:11:54 434
原创 java运算符优先级排序
记录下,便于查看https://www.runoob.com/java/java-operators.htmlhttps://www.w3cschool.cn/java/java-operators.html
2022-06-09 10:57:54 320
原创 google之protobuf使用
下载windows版本:https://github.com/protocolbuffers/protobuf/releasesprotoc-3.20.0-win64.zip解压,进入bin目录后运行cmd拷贝consistency.proto文件到当前目录(protoc运行目录)运行一下命令,在当前目录下生成需要的实体。protoc ./consistency.proto --java_out=./注:我是临时用一下,没有设置环境变量,如果用的比较频繁可以设置,参考https://www.
2022-04-08 15:06:09 421
原创 maven 之DepencyManagement与dependencies
1、DepencyManagementdependencyManagement让子项目中引用一个依赖而不用显示的列出版本号。Maven会沿着父子层次向上走,直到找到一个拥有dependencyManagement元素的项目,然后它就会使用在这个dependencyManagement元素中指定的版本号。 这样做的好处:统一管理项目的版本号,确保应用的各个项目的依赖和版本一致。2、dependencies所有生命在dependencies里的依赖都会自动引入,并默认被所有的子项目继承。3、区别dep
2022-04-02 15:38:11 493
原创 JDK8中LocalDateTime出现ava 8 date/time type `java.time.LocalDate` not supported by default: 解决方法
解决:com.fasterxml.jackson.databind.exc.InvalidDefinitionException: Java 8 date/time type java.time.LocalDate not supported by default: add Module “com.fasterxml.jackson.datatype:jackson-datatype-jsr310” to enable handling ObjectMapper mapper = new ObjectM
2022-03-29 16:40:21 5370
原创 springboot整合hbase-client出现 multiple SLF4J bindings异常排查
主要是由于springboot与引入的中间件日志冲突,在hbase-client排除: <dependency> <groupId>org.apache.hbase</groupId> <artifactId>hbase-client</artifactId> <version>2.4.10</version> <exclusions> <exclusion>
2022-03-23 15:42:33 3263
原创 MiB 和 MB,KiB 和 KB 等的区别
1KB(kilobyte) = 1000 byte, 1KiB(kibibyte) = 1024 byte1MB(megabyte) = 1000000 byte, 1MiB(mebibyte) = 1048576 bytehttp://t.zoukankan.com/uakora-p-14393712.htmlhttps://blog.csdn.net/m0_37526672/article/details/80334595
2022-03-11 11:45:17 695
原创 社区版emqx安装后修改登入到dashboard密码 http://ip:18083/
登入地址:http://ip:18083/修改用户名admin密码为adminemqx_ctl admins passwd admin admin
2022-03-08 22:04:01 2708
原创 您的主机不满足在启用 Hyper-V 或 Device/Credential Guard 的情况下运行 VMware Workstation 的最低要求
1.在控制面板关闭Hyper-V按Windows键,搜索控制面板,点启用或关闭Windows功能,找到Hyper-V,把勾选去掉,选择不重启2.通过命令行关闭Hyper-V(彻底关闭Hyper-V)以管理员身份运行Windows Powershell (管理员)(Windows键+X)运行下面命令并重启电脑:bcdedit /set hypervisorlaunchtype off...
2022-03-08 17:46:57 634
原创 git使用技巧总结 临时问题bug分支修改
原文链接:https://blog.csdn.net/silence_pinot/article/details/111478596查看分支:git branch创建分支:git branch 切换分支:git checkout 创建+切换分支:git checkout -b 合并某分支到当前分支:git merge 删除分支:git breach -d 查看带有冲突解决的日志git log --graph -- pretty=oneline合并时禁止快速合并模式# 合并dev到mas
2022-02-25 15:11:54 1045
原创 HashMap原理以及初始容量阈值与元素个数关系
HashMap原理:https://blog.csdn.net/qq_32828253/article/details/109343879?spm=1001.2014.3001.5502public static void main(String[] args) throws NoSuchFieldException, NoSuchMethodException, InvocationTargetException, IllegalAccessException { //指定初始容量15来创建一个
2022-02-11 10:27:03 284
原创 SpringBoot启动记录
一、生成SpringApplication生成对象的时候运行构造函数,首先初始化SpringApplication定义的属性值(属性在定义时有初始值的),然后运行构造函数中的语句。构造函数中:获取WebApplicationType并设置获取系统引导程序并设置(Bootstrapper),getSpringFactoriesInstances,设置bootstrappersgetSpringFactoriesInstances(ApplicationContextInitializer.class
2022-01-28 15:06:43 705
原创 ubuntu18.04操作记录
一、解禁Ubuntu系统默认禁止root用户ssh登录"PermitRootLogin” 设置是否允许root通过ssh登录。实际生产环境里是设成 “no”#修改sshd服务配置文件vim /etc/ssh/sshd_config# Authentication:#LoginGraceTime 2m#PermitRootLogin prohibit-passwordPermitRootLogin yes#StrictModes yes#MaxAuthTries 6#MaxSess
2022-01-27 10:41:46 1871
原创 Linux磁盘操作
Ubuntu 开机自动挂载硬盘https://www.cnblogs.com/fieldtianye/p/9295986.html
2022-01-26 09:46:48 890
原创 PowerDesigner连接实体数据库反向生成物理模型
一、生成物理模型参考:https://www.cnblogs.com/xmyjcs/p/8536233.htmlhttps://blog.csdn.net/iteye_9108/article/details/82572329二、导出excel:依次点击 Tools ->Excute Commands->Edit/Run Script…'**************************************************************************
2022-01-25 17:47:07 269
编译好的vue工具,直接加载到谷歌浏览器,这个是打包了的vue-devtools-chrome.crx
2020-02-25
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人