江南一点雨

其他

十一月最后一天~给小伙伴们汇报下 TienChin 项目视频进度

的知识点更新完毕后,就正式开始做项目了(估计本月就开始啦)。虽然我感觉自己一直在吆喝,但是还是不少小伙伴来了第一句话是“松哥又有新教程啦?”:因此这里再跟大伙啰嗦一下:TienChin
2022年11月30日
其他

什么是插入意向锁?

小结总结一下:插入意向锁虽然名字中有意向二字,但实际上是一个特殊的间隙锁。插入意向锁之间不互斥。插入意向锁和排他锁之间互斥。好啦,有问题欢迎留言讨论。松哥最近正在录制
2022年11月28日
其他

一图胜千言,实时掌握流程走到哪一步了!

File("/Users/sang/Downloads/1.png"));}可以看到,当一个流程实例执行完毕的时候,我们可以去历史表中查询这个流程实例,同时也去历史表中查询这个流程实例所执行过的活动
2022年11月24日
其他

Nacos 中的配置文件如何实现加密传输

管理页面上配置的配置文件,将会以加密的密文形式存储在数据库中,也会以密文的形式传输到客户端,然后在客户端自动完成解密操作。大致上就是这样一个过程。接下来我们就来看看具体的用法。2.
2022年11月21日
其他

Spring5 里边的新玩法!这种 URL 请求让我涨见识了!

"/hello/{p1}/{p2}";}@GetMapping("/{name:[a-z-]+}-{version:\\d\\.\\d\\.\\d}{ext:\\.[a-z]+}")public
2022年11月18日
其他

实现一个简单的 Spring Bean 容器

这个源码级复杂框架的设计和实现精髓,就应该像开发一个项目一样,从零写一遍。只有你写了这个项目,才能知道具体细节是如何处理的,各类设计是如何实现的。手写Spring独乐不如众乐,小傅哥把手动实现简单版
2022年11月18日
其他

如何不重新编译让 Spring Boot 配置文件生效?

--spring.config.additional-location=optional:javaboy/app.yaml如果这个额外指定的配置文件和已有的配置文件有冲突,那么还是以后来者为准。3.
2022年11月16日
其他

这些书,推荐给小伙伴们,也送给小伙伴们!

又是一年一度的双十一,最近电商平台都在打折,松哥去逛了逛,图书的优惠券还是比较简单不烧脑,基本上就两种:“多买优惠”,即:1件7.5折,两件6.5折“满减”,即:每满100-50这两个活动结算的时候二选一,还能叠加满200-10的优惠券,更加人性化了!想必不少小伙伴打算趁此机会入手几本好书,好让自己继续精进!有打算买书的小伙伴,我为大家整理了一份书单,让大家买书不迷茫!快来看看吧!
2022年11月10日
其他

架构设计之「 微服务入门 」

微服务这几年不可谓不火,很多技术团队都开始在自己的项目上引入了微服务。一方面这些团队确实很好的推动了微服务的应用和发展,另一方面也可以看到一些盲目追技术热点的行为所带来的危害,比如很多中小团队对微服务的基础知识只是做了很浅显的了解就开始盲目的推动微服务的实施,最后导致了项目的失败。微服务要想做好是一个非常复杂的架构,今天就先只聊一聊微服务的一些基础架构,算是入门篇。一、什么是「
2022年11月10日
其他

十月结束了~给小伙伴们汇报下 TienChin 项目视频进度

的知识点更新完毕后,就正式开始做项目了(估计本月就开始啦)。虽然我感觉自己一直在吆喝,但是还是不少小伙伴来了第一句话是“松哥又有新教程啦?”:因此这里再跟大伙啰嗦一下:TienChin
2022年11月1日
其他

Spring Boot 中的 AOP,到底是 JDK 动态代理还是 Cglib 动态代理?

}}方法不用实现。再来一个简单的切面:@EnableAspectJAutoProxy@Aspect@Componentpublic
2022年9月1日
其他

八月最后一天,给小伙伴们汇报下 TienChin 项目视频进度

脚手架,让小伙伴们能够熟练掌握这个脚手架的使用,在这个过程中,我会讲许多技术点,前面列出来的视频目录都属于这一部分的内容,这个过程中我不会带领大家从头敲一边
2022年8月31日
其他

Spring Security + Vue + Flowable 怎么玩?

PasswordEncoder,配置方式如下:flowable.idm.password-encoder=spring_delegating接下来提供一个用户类(涉及到
2022年8月22日
其他

SpringBoot+Vue+Flowable,模拟一个请假审批流程!

的定义方式也是类似的。这些自定义类写好之后,将来配置到流程图中即可(可查看上文的流程图)。最后再来看看前端提交方法就简单了(页面源码上文已经列出):approveOrReject(taskId,
2022年8月10日
其他

手把手教你用 Jenkins 自动部署 SpringBoot!

等),然后由运维团队将其部署到实时生产环境中。这旨在解决开发和运维团队之间可见性及沟通较差的问题。因此,持续交付的目的就是确保尽可能减少部署新代码时所需的工作量。持续部署(Continuous
2022年8月4日
其他

松哥手把手教你在 Vue3 中自定义插件

中,通过第二个参数传入进来的。当然上面这个例子中松哥没有传递第二个参数。好了,如此配置之后,接下来启动项目,控制台就可以看到有日志打出了。这样的插件未免过于简单,接下来我们就给这个插件加点料。2.2
2022年8月1日
其他

七月最后一天,给小伙伴们汇报下 TienChin 项目视频进度

脚手架,让小伙伴们能够熟练掌握这个脚手架的使用,在这个过程中,我会讲许多技术点,前面列出来的视频目录都属于这一部分的内容,这个过程中我不会带领大家从头敲一边
2022年7月31日
其他

Spring Boot 国际化踩坑指南

中的国际化。首先,需要给大家先说明一点,项目中的国际化我们往往需要多方面的支持,例如后端做国际化、前端页面也要做国际化,共同搭配,才能真正实现国际化的功能。本文我先来和各位小伙伴们介绍
2022年7月27日
其他

一个月过去了,TienChin 项目视频进度怎么样了呢?给大家汇报下!

脚手架,让小伙伴们能够熟练掌握这个脚手架的使用,在这个过程中,我会讲许多技术点,前面列出来的视频目录都属于这一部分的内容,这个过程中我不会带领大家从头敲一边
2022年7月27日
其他

SpringMVC 异常处理体系深入分析

中,大致的异常解析器就是这些,接下来我们来逐个学习这些异常解析器。2.AbstractHandlerExceptionResolverAbstractHandlerExceptionResolver
2022年7月26日
其他

史上最全的 IDEA Debug 调试技巧(超详细案例)

点击打开详情如图3.3。我一般会使用这种方式,快捷方便。[图3.2][图3.3]3、在Variables里查看,这里显示当前方法里的所有变量。[图3.4]4、在Watches里,点击New
2022年7月19日
其他

如何随意切换 NodeJs 版本?

/usr/local/lib/dtrace/node.d一顿操作下来,然后执行如下命令,如果找不到对应的命令,那就表示删除成功了:node
2022年7月15日
其他

这个开源项目有槽点?

这个脚手架在网上有很多人吐槽,不知道有没有必要去了解下这个脚手架,今天想和小伙伴们讨论下这个话题,也顺便说说我的看法。四月份的时候,我说想基于
2022年7月12日
其他

SpringBoot 自定义参数解析器 So Easy!

中提取出来的,到底是怎么提取出来的?这就是松哥今天要和大家分享的话题。1.自定义参数解析器为了搞清楚这个问题,我们先来自定义一个参数解析器看看。自定义参数解析器需要实现
2022年7月11日
其他

如何在 TienChin 项目中自定义权限表达式

对象中的方法,如果要执行其他对象的方法,那么还需要写上对象的名字,例如如下两个例子:@PreAuthorize("hasAuthority('system:user:add')")public
2022年7月4日
其他

一个月过去了,TienChin 项目视频进度怎么样了呢?给大家汇报下!

脚手架,让小伙伴们能够熟练掌握这个脚手架的使用,在这个过程中,我会讲许多技术点,前面列出来的视频目录都属于这一部分的内容,这个过程中我不会带领大家从头敲一边
2022年6月30日
其他

Spring Security 中,想在权限中使用通配符,怎么做?

User();user.setAddress("广州");user.setUsername("javaboy");user.setId(99);ctx.setVariable("user",
2022年6月27日
其他

听说 TCC 不支持 OpenFeign?这个坑松哥必须给大家填了!

测试最后再来个简单测试,成功的测试:调用失败的测试:好啦,这篇文章太长了,我就不啰嗦了,本文需要结合上篇文章一起食用效果更佳~当然,本文也有配套视频,戳这里:TienChin
2022年6月6日
其他

Spring Boot 多数据源如何处理事务?教你一招!

案例准备首先多数据源的案例我就不重复写了,我们之前已经写过一个,这里就不再赘述,文章一开头也有相关的链接,还没看过的小伙伴可以先看看。也可以直接在公众号后台回复
2022年6月2日
其他

手把手带领小伙伴们写一个分布式事务案例!

easy。common最后我们再提供一个公共模块,这个公共模块被其他所有业务模块所所依赖,在公共模块中我们来处理全局异常:@RestControllerAdvicepublic
2022年6月1日
其他

TienChin 项目视频来啦~

号的时候还没开始录。然而让我感动的是,在视频一集都没录的时候,就有不少小伙伴选择了相信,就直接光速下单了,而我当时因为还没有视频,甚至还不能提供授权码给大家,一直到了
2022年5月31日
其他

一文搞明白分布式事务解决方案!真的 so easy!

事务的基础是两阶段提交协议。需要有一个事务协调者来保证所有的事务参与者都完成了准备工作(第一阶段)。如果协调者收到所有参与者都准备好的消息,就会通知所有的事务都可以提交了(第二阶段)。MySQL
2022年5月30日
其他

想要控制好权限,这八个注解你必须知道!

提供的权限注解,不同于前面四个注解,该注解不支持权限表达式,只能做一些简单的权限描述。@Secured({"ROLE_ADMIN","ROLE_USER"})public
2022年5月24日
其他

网页上点一下,就能切换不同数据源?松哥手把手教你!

前两天松哥发了一篇文章,跟小伙伴们分享如何通过自定义注解实现多数据源切换,其中有一个小伙伴提了这样一个问题:我觉得这个问题还挺有意思的,因此决定录个视频和小伙伴们分享下,废话不多说,请看大屏幕:松哥最近正在录制
2022年5月13日
其他

手把手教你玩多数据源动态切换!

建议配置为true,不影响性能,并且保证安全性。申请连接的时候检测,如果空闲时间大于timeBetweenEvictionRunsMillis,执行validationQuery检测连接是否有效。
2022年5月10日
其他

TienChin 项目视频来啦

点半,然后出发去公司(我就住在公司附近),晚上下班后,再把早上录制的视频进行剪辑整理,这样的日子持续了小半年才结束,不过好在那次的视频获得了小伙伴们的认可:和当年的
2022年5月8日
其他

记录锁、间隙锁与 Next-Key Lock

TRANSACTIONS,如下:红色框选中的,就是一个间隙锁的加锁记录,可以看到,在某一个记录之前加了间隙锁。这就是间隙锁。非常重要的一点需要大家牢记:Gap
2022年4月29日
其他

如何搭建双 M 结构的主从备份?

开始需要)server-id=1各项配置的含义松哥已经在注视中说明了。截图如下:如下图:log-bin:同步的日志路径及文件名,一定注意这个目录要是
2022年4月8日
其他

S 锁与 X 锁,当前读与快照读!

当前读与快照读相对应的就是当前读,当前读就是读取最新数据,而不是历史版本的数据,换言之,在可重复读隔离级别下,如果使用了当前读,也可以读到别的事务已提交的数据。松哥举个例子:MySQL
2022年3月18日
其他

666!MySQL 的 binlog 的三种格式这么好玩!

DML(不包含数据查询语句)语句,而且是以事件形式记录,还包含语句所执行的消耗的时间等,需要注意的是:binlog
2022年3月15日
其他

IDEA 中如何完成 Git 版本回退?

工作区的代码想撤销可能有一天我正在写代码,写了很久发现写错了,想恢复到一开始的状态,一个笨办法就是把刚刚写的代码一行一行的删除,不过这种方式成本太高,我们可以通过git
2022年2月28日
其他

IDEA 中玩转 Git

Message,下方也能看到不同版本的内容对比,点击右下角完成代码提交,注意这个只是提交到本地仓库。由于我们并不会将
2022年2月22日
其他

Spring Boot 如何监控 SQL 运行情况?

查询spring.datasource.druid.web-stat-filter.exclusions=*.js,*.gif,*.jpg,*.png,*.css,*.ico,/druid/*#
2022年2月15日
其他

索引下推,yyds!

组成的复合索引只是一个普通索引,并不是唯一索引(如果是唯一索引,那么这个查询就到此结束了),所以还需要继续去搜索有没有满足条件的记录。但是注意第四步的搜索方式,不是直接去
2022年1月21日
其他

其实 MySQL 中的 like 关键字也能用索引!

索引中了,所以可以通过覆盖索引机制直接从索引中获取想要的数据并返回,不需要回表操作了。如果大家不懂覆盖索引戳这里:是时候检查一下使用索引的姿势是否正确了!。如果大家不懂回表戳这里:什么是
2022年1月19日
其他

是时候检查一下使用索引的姿势是否正确了!

索引,可以有效提高我们的数据库搜索效率,各种数据库优化八股文里都有相关的知识点可背,不过单纯的被条目其实很容易忘记。所以松哥想通过几篇文章,和大家仔细聊一聊索引的正确使用姿势,结合一些具体的例子来帮助大家理解索引优化,这是一个小小的系列,可能会有几篇文章,今天先来第一篇。1.
2022年1月17日
其他

什么是 MySQL 的“回表”?

为例(二级索引存储数据量的计算原理类似,但是叶子节点和非叶子节点上存储的数据格式略有差异),我们可以简单算一下。❝计算机在存储数据的时候,最小存储单元是扇区,一个扇区的大小是
2022年1月13日
其他

为什么执行 alter 更新表要慎重?

锁的问题,感兴趣的小伙伴可以自己动手尝试下哦。参考资料:http://dev.mysql.com/doc/refman/5.7/en/cannot-roll-back.html
2021年12月24日
其他

你这 Saga 事务保“隔离性”吗?

方法则是代码补偿逻辑,即回滚的时候需要执行的代码。具体到这两个方法的实现上,并没有啥,都是打印日志,所以这个项目我们只需要认真观察打印出来的日志,就能知道事务是提交了还是回滚了。在
2021年8月28日
其他

XA 事务水很深,小伙子我怕你把握不住!

事务的基础是两阶段提交协议。需要有一个事务协调者来保证所有的事务参与者都完成了准备工作(第一阶段)。如果协调者收到所有参与者都准备好的消息,就会通知所有的事务都可以提交了(第二阶段)。MySQL
2021年8月23日