自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(36)
  • 收藏
  • 关注

原创 Jar包上传线上仓库流程

1 上使本地做載jar到线上仓摩、通过 cmd 命令 执行以下命令行 (执行时命令行不能有换行, -Dpomfile 到 -Dfile 用空格隔开即可)// 上fjar对应的 sources 源码文件、 绝度路径上传 (源码不影响依赖包的使用)// 上传jar对应的pom 文件。// 上使jar耐应的jar 文件、艳度路径上传。1、准备好本地已经下载好的jar相关文件。2、编写上传执行命令。// 有效的上传地址。

2024-01-23 16:21:21 449

原创 《Java基础篇》JavaBean的生命周期·作用域·通俗易懂

首先是实例化、属性赋值、初始化、销毁这 4 个大阶段再是初始化的具体操作,有 Aware 接口的依赖注入、BeanPostProcessor 在初始化前后的处理以及 InitializingBean 和 init-method 的初始化操作;(或**@PostConstruct注解**)销毁的具体操作,有注册相关销毁回调接口,最后通过DisposableBean 和 destory-method 进行销毁。(@PreDestory注解也可实现)

2023-06-22 15:33:13 755

原创 SnowFlake 雪花算法实现以及详解

SnowFlake 中文意思为雪花,故称为雪花算法。在2014年开源 scala 语言版本。对于每一个雪花算法服务,需要先指定 10 位的机器码,这个根据自身业务进行设定即可。例如机房号+机器号,机器号+服务号,或者是其他可区别标识的 10 位比特位的整数值都行。可以将雪花算法作为一个单独的服务进行部署,然后需要全局唯一 id 的系统,请求雪花算法服务获取 id 即可。雪花算法的原理就是生成一个的 64 位比特位的 long 类型的唯一 id。

2023-06-20 21:16:25 355

原创 PostgreSQL和mysql语法区别详解通俗易懂

设置自增序列:nextval('xiang_base.cloud_new_id_seq'::regclass)如果想对拼接的值做排序,可以在拼接符号后面加。在3000W数据的时候,建议使用第一种。

2023-06-20 18:05:08 3370 1

原创 ZooKeeper 总结最全面的面试题·没有之一

watcher event 异步发送 watcher 的通知事件从 server 发送到 client 是异步的,这就存在一个问题,不同的客户端和服务器之间通过 socket 进行通信,由于网络延迟或其他因素导致客户端在不通的时刻监听到事件,由于 Zookeeper 本身提供了 ordering guarantee,即客户端监听事件后,才会感知它所监视 znode发生了变化。这个框架中要完成调度必须要有一个分布式的注册中心,储存所有服务的元数据,你可以用zk,也可以用别的,只是大家都用zk。

2023-06-11 22:41:53 370

原创 《Java 基础篇》之函数式接口

有且仅有一个抽象方法的接口。Java中的函数式编程体现就是Lambda表达式。所以函数式接口即可以适用于Lambda使用的接口。如何检测一个接口是不是函数式接口?放在接口定义的上方:如果接口是函数式接口,编译通过;如果不是,编译失败。");i.show();注意:自定义函数式接口时,@FunctionalInterface是可选的,就算不写这个注解,只要保证满足函数式接口定义的条件,也照样是函数式接口。

2023-06-11 18:50:03 5923 1

原创 《Java 基础篇》之终止线程的几种方式

一、正常运行结束所谓正常运行结束,就是程序正常运行结束,线程自动结束。

2023-06-11 14:01:25 317

原创 Mybatis 主流经典面试题·吊打面试官

延迟加载的基本原理是,使用CGLIB创建目标对象的代理对象,当调用目标方法时,进入拦截器方法,比如调用a.getB().getName(),拦截器invoke()方法发现a.getB()是null值,那么就会单独发送事先保存好的查询关联B对象的sql,把B查询上来,然后调用a.setB(b),于是a的对象b属性就有值了,接着完成a.getB().getName()方法的调用。有了namespace,自然id就可以重复,namespace不同,namespace+id自然也就不同。有联合查询和嵌套查询。

2023-06-11 11:20:05 116

原创 SpringCloud与Dubbo的区别(全面详解)深入浅出

Eureka集群中各个节点都是平等的,几个节点挂掉不会影响正常节点的工作,剩余的节点依然可以提供注册和查询服务。Invoker是实体域,它是Dubbo的核心模型,其它模型都向它靠扰,或转换成它,它代表一个可执行体,可向它发起invoke调用,它有可能是一个本地的实现,也可能是一个远程的实现,也可能一个集群实现。当我们通过一个服务器修改数据后,该服务器会向另一个服务器发送请求,将数据进行同步,但此时,该数据应处于锁定状态,不可再次修改,这样,如果此时我们想服务器发送请求,则得不到相应,这样就不能A,高可用。

2023-06-10 18:31:34 11640 3

原创 gerrit push 的哪些坑

(1)是通过 merge 拉取合并代码,这个时候如果你没有 push merge 的权限的话,通过这种方式提交不了,(2)通过 rebase 拉取合并代码,这时候没有merge 记录,不会受 push merge 权限的影响。// src/main/java/messagelog/ --add这个目录下的Java文件。勾选了Amend 就不会重新生成change-id,只是在上一次的提交版本上修复提交。git commit -m "提交备注信息"二、拉取代码,然后提交代码流程。输入 :wq 回车。

2023-02-06 09:26:20 226

原创 Springboot快速集成RocketMQ

零基础,Springboot快速集成RocketMQ

2023-01-17 16:51:58 4946

原创 WebSocket零基础极速上手开发指南

WebSocket零基础极速上手开发指南

2023-01-13 15:42:04 607

原创 极光推送零基础极速上手开发指南,快速搭建后台推送服务

极光推送零基础极速上手开发指南,配置、工具类封装、业务调用、应用创建等环节的操作。一目了然,

2023-01-13 11:28:27 812

原创 Git 通过change push代码时,失败 提示没有找到change-id

首先通过git reset --mixed 71d4******************************(版本号),回退commit 操作。地址:D:\HaierWork\jsh-msg\.git\hooks下的 丢失了这个文件。从之前下载的工程中复制commit-msg文件到.git/hooks目录下即可解决该问题。src/main/java/messagelog/ --add这个目录下的Java文件。以上两个文件同时存在在可以在 执行 commit 命令时正常生成 change-id。

2022-12-28 10:33:59 1656

原创 MySQL 存储过程详解

目录1.存储过程简介2.存储过程的优点3.MySQL的存储过程3.1.MySQL存储过程的创建3.1.1创建语句格式3.1.2.声明分割符3.1.3.参数3.2.通过存储过程批量插入数据 我们常用的操作数据库语言SQL语句在执行的时候需要要先编译,然后执行,而存储过程(Stored Procedure)是一组为了完成特定功能的SQL语句集,经编译后存储在数据库中,用户通过指定存储过程的名字并给定参数(如果该存储过程带有参数)来调用执行它。 一个存储过程是一个可编程的函数,它在数据

2022-12-04 14:40:30 672

原创 MySql事务隔离级别与实现原理

目录一、隔离级别二、隔离级别的底层实现2.1.读未提交隔离级别的实现2.2.读已提交隔离级别的实现 2.3.可重复读隔离级别的实现 2.4.串行化隔离级别的实现2.5.读的分类 众所周知,事务的隔离级别有四个等级,分别是读未提交(RU),读已提交(RC),可重复读(RR)与串行化(Serial),通过设置隔离级别,可以解决事务并发过程中导致的脏读,不可重复读与幻读。那么隔离级别解决这些问题的原理或逻辑是什么呢二级 读已提交快照读:读MVCC,写加排他锁当前读:读加行锁,写加排他锁读MVCC,写

2022-12-03 15:03:53 732

原创 数据库引擎 Innodb

目录一、Innodb的行锁和表锁1.1.什么是Innodb?什么是行锁和表锁?1.2.行锁和表锁的特点1.3.分类1.4.注意事项1.5.深入理解锁行锁:表锁1.如果对某几行上行锁,但是没有索引,会变成表锁.行锁是针对索引来实现的其实这里不太恰当的,并不是对变成表锁,而是对整个所有的数据行加行锁,因为在不使用索引的情况下,mysql并不知道哪些符合条件。会全部加锁返回。 举例: 在一个事务中执行. SELECT * FROM account WHERE NAME IN(‘张三’,‘嗨

2022-12-03 12:02:14 147

原创 @Transactional注解

一、使用范围@Transactional注解 可以作用于接口、接口方法、类以及类方法上。当用作类上时,该类上的所有 public 方法将都具有该类型的属性。 当用作方法上是,该方法所在类上的注解将失效,该注解只能应用在 public 方法上。 不建议用在接口或接口方法上,因为这只有在使用基于接口的动态代理是才会生效!注意:只有来自外部的方法调用才会引起事务行为,类内部方法调用本类内部的其他方法并不会引起事务行为。二、注解属性value属性:当配置多个事务管理器时,可以使用该属性指定选择

2022-11-17 21:57:45 225

原创 Springboot工作原理详解

5、在解析@Import注解的时候,会有一个getImport()方法,从主类开始递归解析注解,把所有包含@Import的注解都解析到,然后在processImport()方法中对import的类进行分类,例如AutoConfigurationImportSelect归属于ImportSelect的子类,在后续的过程中会调用DeferredImportSelectorHandler类里面的process方法,来完成整个EnableAutoConfiguration的加载。

2022-11-15 16:30:00 13389 1

原创 Dubbo 与 SpringCloud 的关系

Dubbo:是基于java接口及Hession2序列化的来实现传输的,Provider对外暴露接口,Consumer根据接口的规则调用。也就是Provider向Zookeeper注册的是接口信息,Consumer从Zookeeper发现的是接口的信息,通过接口的name,group,version来匹配调用。Consumer只关注接口是否匹配,而对此接口属于什么应用不关心。当然接口的注册信息里会包含应用的ip,hostname等Spring Cloud:是一个微服务框架,相比Dubbo等RPC框架,。

2022-11-12 05:30:00 138

原创 CS架构和BS架构的区别(通俗易懂)

●安全性能能够非常容易确保,C/S通常面向相比固定的用户群,程序越发注重过程,它能够对权限实行多层次校验,提供了更安全的存取形式,对信息安全的控制才能非常强。●须要专门的客户端安装程序,分布功能弱,针对点多面广且不具备网络条件的用户群体,不可以完成迅速部署安装与配置。●开发、维护费用较高,须要拥有肯定专业水准的技术人员才可以结束,发生一次升级,就全部客户端的程序全部须要更改。●可以足够表现客户端的处理能力,很多工作能够在客户端处置以后再提交给服务器,于是CS客户端响应速度快。●分布性强,客户端零维护。

2022-11-11 09:20:07 4553

原创 Redisson分布式锁实现原理

redisson

2022-11-10 18:00:46 359

原创 数据库优化详解分析

数据库优化

2022-11-10 15:30:30 639

原创 Java 序列化和反序列化详解完整版

Java 序列化 反序列化

2022-11-09 18:08:35 1502

原创 Mybatis 工作原理详解

mybatis:缓存、防止注入、标签使用,结果集封装从底层实现

2022-11-09 16:05:13 5291

原创 多线程和线程池工作原理解析深入浅出

调用start方法方可启动线程,而run方法只是thread类中的一个普通方法调用,还是在主线程里执行。

2022-11-08 17:34:12 525

原创 深入理解 JVM

1、年轻代是对象的诞生、成长、消亡的区域,一个对象在这里产生、应用,最后被垃圾回收器收集、结束生命。2、老年代放置长生命周期的对象,通常都是从Survivor区域筛选拷贝过来的Java对象。当然,也有特殊情况,我们知道普通的对象会被分配在TLAB上;如果对象较大,JVM会 试图直接分配在Eden其他位置上;如果对象太大,完全无法在新生代找到足够长的连续空闲空间,JVM就会直接分配到老年代。3、当GC只发生在年轻代中,回收年轻代对象的行为被称为MinorGC。

2022-11-07 16:48:43 510

原创 Java 集合、HashMap 底层实现原理

Java 集合可分为Collection和Map两种体系Collection接口:单列数据,定义了存取一组对象的方法的集合List:元素有序(指的是存储时,与存放顺序保持一致)、可重复的集合Set:元素无序、不可重复的集合HashMap是基于哈希表的Map接口的非同步实现。元素以键值对的形式存放,并且允许null键和null值,因为key值唯一(不能重复),因此,null键只有一个。

2022-11-07 15:07:12 780

原创 MySQL索引原理详解

数据库索引原理、索引失效情况、SQL执行顺序

2022-11-07 14:13:09 2357

原创 常用数据库通用连接方式

1、greenplum 通用连接。2、kingbase 数据库连接。3、MySQL 配置 通用配置。4、sql server 配置。greenplum锁表处理。查询因为锁表而等待的语句。5、oracle 通用。

2022-11-03 10:06:37 767

原创 Java Lambda 表达式对集合去重、分组、排序等

Java Lambda 表达式集合排序、去重、分组

2022-11-02 18:13:08 1841

原创 第三方 Rest 接口调用案列

第三方 Rest 接口调用案列

2022-11-02 17:12:43 467

原创 SpringCloud详解原理分析

Spring Cloud 详解

2022-11-01 16:13:19 1486

原创 Redis深度了解

Redis

2022-10-31 16:04:16 386

原创 Linux启动nginx

Linux启动nginx

2022-10-17 16:55:48 465

原创 linux 常用操作命令

linux 常用操作命令

2022-10-09 16:52:19 176

JpushUtil.java

JpushUtil.java

2023-01-11

mule esb mule esb打包手册文档

mule esb mule esb打包手册文档

2022-11-03

mule esb mule esb 开发工具

mule esb mule esb 开发工具

2022-11-03

Tomcat Tomcat Tomcat Tomcat

Tomcat Tomcat Tomcat Tomcat

2022-11-03

git git git 版本管理工具

git git git

2022-11-03

MySQL MySQL MySQL MySQL jar

MySQL MySQL MySQL jar

2022-11-03

Postman Postman Postman

Postman Postman Postman

2022-11-03

greenplum greenplum jar 文件

greenplum greenplum jar 文件

2022-11-03

java jdk.8.0-45.rar 安装包

java jdk.8.0-45.rar 安装包

2022-10-31

dbeaver 数据库连接工具

dbeaver 数据库连接工具

2022-10-31

Linux run-jar.sh 下载连接

Linux run-jar.sh 下载连接

2022-10-13

Java JDK.rar资源下载连接

Java JDK.rar资源下载连接

2022-10-13

xxl 金仓数据库适配项目

xxl 金仓数据库适配项目

2022-10-09

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除