自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

转载 两种方式修改jar内配置文件(1 解压jar,修改并重新打包;2 直接修改jar内指定配置文件)

进行更新上层目录下的jar文件)#更新配置文件 将application.yml到test.jar包内。将jar解压后的BOOT-INF文件夹放到要打入的jar包同级目录。#将test.jar解压到新目录,新目录自动命名为testTemp。使用 jar uf 命令将对应目录下的文件打入jar包。#进入临时目录下,修改需要修改的文件并保存。保留解压目录下要替换的文件,其他文件删掉。#将文件名包含$符号的文件打入jar。#列出jar下所有目录及目录下文件。#取出jar包中的指定文件。

2025-02-21 15:40:45 259

转载 Spring 为什么要用三级缓存来解决循环依赖(AOP),二级缓存不行吗

如果我们更过分点,不遵守每一级缓存存入的是同一过程性质的bean,那么我们只需一级缓存,每个bean提前创建好代理对象就放入一级缓存,(此时一级缓存的bean还是未初始化的bean),接下来B直接从一级拿到A的代理对象,完成创建,B把自己完整的Bean也放入一级缓存,此时一级缓存的bean 就有中间态和完成态两种形态的bean, 最终A完成创建,一级缓存全是完成态Bean。此时B相当于从三级缓存中拿到了A的代理对象,B为了后面的C和自己拿到的是同一个A的代理对象,他就需要把这个A代理对象放入第二级缓存。

2025-02-09 17:17:18 61

转载 spring3注解 @ConfigurationProperties

另外还有这个类:ConfigurationPropertiesBindingPostProcessorRegistrar,刚刚没有分析,看了下源码,其实他做的事情就是将配置文件当中的属性值赋予到加了@ConfigurationProperties的注解的类的属性上,具体就不分析了,有兴趣自己可以阅读,入口知道了,就简单了。第一步:创建一个类TestConfigurationProperties。@EnableConfigurationProperties是怎么加载的。第四步:跑一下,打印出User这个类。

2025-02-08 16:57:11 58

转载 MySQL三大日志(binlog,redolog,undolog)详解

主从复制:在主从架构中,Bin log 用于同步主数据库的数据变更到从数据库。保证事务的持久性:通过将事务的修改操作记录到 Redo log 中,可以确保在系统故障或崩溃发生时,已提交的事务能够被正确地重新执行,保证数据的一致性。配置 Undo log 的大小:根据数据库的并发事务量和数据修改量,合理配置 Undo log 的大小,以确保足够的空间来存储 Undo log 信息。减少磁盘IO操作:Redo log的写入是顺序追加的方式,相比于随机写入数据库文件,它可以减少磁盘IO的操作,提升数据库的性能。

2025-02-08 15:23:17 14

原创 奇怪,mysql密码明明是对的,怎么就是报报错?

远程连接mysql数据库的时候密码明明是正确的,但是mysql -uroot -p123456提示“ERROR 1044 (42000): Access denied for user ‘’@‘localhost’ to database ‘password’”,到服务器上检查看看,依然是一样的,密码明明是对的啊,有些怀疑了,因为是docker容器 ,查看下密码 (docker inspect "mysql容器名"| grep MYSQL_ROOT_PASSWORD)结果没有再报错,root用户创建成功。

2025-01-25 11:50:07 356

原创 RocketMQ 重试机制详解及最佳实践

上述误用的场景实际上是组合了限流和重试能力来进行削峰,RocketMQ 推荐的削峰最佳手段为组合限流和堆积,业务以保护自身为前提,需要对消费流量进行限流,并利用 RocketMQ 提供的堆积能力将超出业务当前处理的消息滞后消费,以达到削峰的目的。但请谨记 “重试是对于分布式系统来说自私的”,因为客户端认为其请求很重要,并要求服务端花费更多资源来处理,盲目的重试设计不可取,合理的使用重试可以帮助我们构建更加弹性且可靠的系统。重试的间隔将不稳定,将导致大量重试消息延后消费,即削峰的周期被大幅度延长。

2024-12-07 17:32:00 1421

原创 【HttpClient ,FeignClient 区别】

Feign因为被我们广泛应用在Spring Cloud 的解决方案中,因此它被我们熟知也是因为此,Feign 的英文表意为“假装,伪装,变形”, 是一个http请求调用的轻量级框架,是以Java接口注解的方式调用Http请求,而不用像Java中通过封装HTTP请求报文的方式直接调用。HttpClient相比传统JDK自带的URLConnection,增加了易用性和灵活性,它不仅使客户端发送Http请求变得容易,而且也方便开发人员测试接口(基于Http协议的),提高了开发的效率,也方便提高代码的健壮性。

2024-04-16 18:43:55 765

原创 Oracle存储过程(包)中的执行没有权限?Authid Current_User使用

由于用户拥有的role权限在存储过程是不可用的。遇到这种情况,我们一般需要显示授权,如grant create table to user;但这种方法太麻烦,有时候可能需要进行非常多的授权才能执行存储过程,实际上,oracle给我们提供了在存储过程中使用role权限的方法:修改存储过程,加入Authid Current_User时存储过程可以使用role权限。

2024-02-22 15:49:58 872 1

转载 为什么阿里巴巴禁止工程师直接使用日志系统(Log4j、Logback)中的 API

请不要在你的Java代码中出现任何Log4j等日志框架的API的使用,而是应该直接使用SLF4J这种日志门面。

2023-12-15 15:44:21 124

原创 【无标题】

在jre下的( jdk/jre)的 jre\lib\security 修改 java.security 文件,添加security.provider.(?尾巴那加1,2,3,4)=org.bouncycastle.jce.provider.BouncyCastleProvider。2,下载好的jar包在/jre/lib/ext 下添加 bcprov-jdk15on-1.58.jar,版本看自己的,,也可以一起加一个 同版本的…原因呢显而易见就是不支持,,,(添加对地方啊,,,)

2023-08-30 14:08:46 304

转载 UNISTR函数转换UNICODE编码字符串为中文的正确方式

UNISTR函数转换UNICODE编码字符串为中文的正确方式

2023-08-23 13:51:25 239

原创 mysql显示连接和隐式连接的区别效率(mysql)

从性能角度来看,对于MySQL来说,显示连接通常比隐式连接更高效。这是因为MySQL查询优化器可以更好地优化显示连接,使用适当的连接顺序和连接类型来提高查询执行效率。在MySQL中,连接可以使用显示连接(explicit join)或隐式连接(implicit join)来执行。在显示连接中,连接条件明确地指定在JOIN子句中,使得查询更加清晰和易于理解。而在隐式连接中,连接条件放置在WHERE子句中,容易造成混淆,特别是在复杂查询中。隐式连接是通过将连接条件放置在WHERE子句中来隐式执行连接操作。

2023-06-22 15:03:32 2173 1

原创 mq-问题

发送确认消息的备份:如果连接断开导致无法发送应答消息,您可以在消费者重新连接时,检查未确认的消息,并重新发送确认消息给消息队列系统。当消费者接收到消息并成功处理后,它会发送一个应答(也称为确认)给消息队列系统,以通知系统该消息已经成功消费。通过查看消费者的日志,您可以了解到消息是否已经被消费。如果由于某些原因连接断开,消费者无法发送应答消息,那么消息队列系统可能会将该消息重新投递给其他可用的消费者。检查消息队列系统的管理界面:大多数消息队列系统都提供了管理界面,您可以通过该界面查看消息的状态和消费情况。

2023-06-17 16:30:08 566 1

原创 如何快速融入新的开发团队及快速熟悉即将接手的系统功能

如何快速融入新的开发团队及快速熟悉即将接手的系统功能

2023-06-17 16:28:19 70 1

原创 如何快速融入新的开发团队及快速熟悉即将接手的系统功能

[如何快速融入新的开发团队及快速熟悉即将接手的系统功能]

2023-06-17 10:20:48 74 1

原创 并发编程 (二) 指令重排

并发编程

2023-06-11 16:13:53 671

原创 理解b+树

关键词 :数据结构 数据库 索引 树结构 B树 非叶子节点 叶子节点 分支因子 排序 查询效率 空间换时间 范围查询先讲讲b树。

2023-06-10 10:40:20 218

原创 IOC 容器中添加组件的方式

①:通过@CompentScan +@Controller @Service @Respository @compent。通过@Import的 ImportBeanDefinitionRegister导入组件 (可以指定bean的名称)通过@Import 的ImportSeletor类实现组件的导入 (导入组件的id为全类名路径)③:通过@Import来导入组件 (导入组件的id为全类名路径)②:通过@Bean的方式来导入组件(适用于导入第三方组件的类)//把bean定义对象导入到容器中。

2023-06-08 17:51:52 192 1

原创 mvcc多版本并发控制的原理

1MVCC,全称Multi-Version Concurrency Control,(多版本并发控制)的缩写,即多版本并发控制。MVCC是一种并发控制的方法,一般在数据库管理系统中,实现对数据库的并发访问,在编程语言中实现事务内存。MVCC在MySQL InnoDB中的实现主要是为了提高数据库并发性能,用更好的方式去处理读-写冲突,做到即使有读写冲突时,也能做到不加锁,非阻塞并发读。

2023-06-07 16:44:15 229 1

原创 @Autowired 和 @Resource 思考

Autowired和@Resource是Java中常用的两个注解,用于实现依赖注入(Dependency Injection)和资源注入(Resource Injection)。它们的使用和行为略有不同,下面我将详细介绍它们之间的区别。@Autowired注解是由Spring框架提供的,用于自动装配(Autowired)Bean的依赖关系。它可以应用于构造方法、成员变量、方法和参数上。当Spring容器扫描到带有@Autowired注解的元素时,会自动将匹配的Bean注入到该元素中。

2023-06-06 15:28:40 133 1

原创 spring-cloud-alibaba版本说明

spring-cloud-alibaba版本说明 (github)

2023-06-06 15:00:26 128 1

空空如也

空空如也

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

TA关注的人

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