自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 解决 springboot 多数据源或动态数据源 的事务问题

需求背景:  动态数据源 或者 多数据源 在项目当中是经常遇到的,但由于spring 开启事务后,为保证整个事务的 connection 不会变化,spring 在通过 DataSourceUtils 获取 connection 的时候会用 DataSource 作为 key 将 connection 保存到 ThreadLocal 中(这段代码是没办法进行重写的,它是静态方法,并在其他地方直接调用),如下所示:spring 事务获取 connection 源代码:public static Con

2021-06-09 23:02:37 4211 4

原创 springboot+mybatis 实现 动态数据源

应用场景  单个应用里面同时需要操作多个库的表,且库不固定;  这是以前做的一个 数据解析 服务场景下的一个功能,因为每次解析的数据量很大,会生成大量的表,所以每次的解析生成的数据都会单独创建一个来存储;  当然在其他 比如 多个数据源 实现读写分离 等场景下也可能会遇到这样的问题;实现方案  这里使用的方案是参考的 AbstractRoutingDataSource,重写 DataSource,并在获取 connection 的时候实现数据源的自动切换,从而实现使用一个 SqlSessionFa

2021-06-09 22:08:33 1483

原创 Navicat 连接 mysql8 报错:2059 - Authentication plugin ‘caching_sha2_password‘ cannot be loaded:xx

  Navicat 连接 MySQL8 报错:2059 - Authentication plugin ‘caching_sha2_password’ cannot be loaded:xxxx;问题原因  这是因为 mysql 8 之前密码加密规则为 mysql_native_password,而 MySQL8 之后的加密规则为 caching_sha2_password,也就是说,如果要连接 MySQL,其实只需要将 密码规则 改回 mysql_native_password 即可;解决方法1

2021-03-15 22:41:02 10341 8

原创 自定义 springboot starter 及其源码解析

自定义 springboot starterspring boot 启动自定义 starter 源码解析读取 spring.factories 文件提取 EnableAutoConfiguration 配置流程总结自定义 springboot starter  第一步:创建被引入项目的 config 类,主要是一些基本配置,比如扫描等等  第二步:在 resource 目录下,新建 META-INF 文件夹,并创建 spring.factories 文件,然后在 将配置类 赋值 给 org.

2021-03-09 23:49:31 1101

原创 springboot 防止重复请求,防止重复点击

  利用 springboot + redis 实现过滤重复提交的请求,业务流程如下所示,首先定义一个拦截器,拦截需要进行过滤的URL,然后用 session + URL 作为唯一 key,利用 redis setnx 命令,来判断请求是否重复,如果 key set 成功,说明非重复请求,失败则说明重复请求;  URL 拦截器可以使用 spring 拦截器,但使用 spring,每个需要过滤的新 URL 都需要添加配置,因此这里使用 AOP 注解 的形式来实现,这样更直观一点;  首先,定义注解:@

2021-03-02 22:03:20 3678 2

原创 Centos8 无法访问网络的问题

  Centos8 默认情况下是没有激活网卡的;  当我们安装 Centos8 后,第一次访问网络,比如 ping:www.baidu.com,一般都会提示你 ping:www.baidu.com: Name or service not known;  所以,安装 Centos8 之后,首先应该激活网卡,这样才能访问网络;  进入网络配置目录:cd /etc/sysconfig/network-scripts  一般来说该目录下会存在一个 ifcfg-ens33 的文件  使用 vi 编辑该

2021-01-20 23:20:56 3423

原创 ieda配置 javap 后运行报错,错误:找不到类

ieda javap 错误: 找不到类  这两天为了方便学习,参照百度在 idea 的 External Tools 上配置了 Javap,但反编译的时候却直接报错,找不到类;![image.png](https://img-blog.csdnimg.cn/img_convert/af0bb8a15f16c345ae3136263995ea9b.png#align=left&display=inline&height=98&margin=[object Object]&n

2020-10-27 22:21:30 2010 3

原创 SpringMVC 利用注解获取 Session 中的数据

SpringMVC 利用注解获取 Session 中的数据1. HandlerMethodArgumentResolver 的使用  通常来说,我们获取获取 Session 中的数据,比如 登录用户 LoginUserVO,都是在方法中注入 HttpSession,然后执行LoginUserVO attribute = (LoginUserVO) session.getAttribute(“login_user_key”); 来获取,因为用到的地方比较多,每次都得写重复的代码还得进行数据的转换就会很

2020-09-01 22:33:45 836

原创 Spring XML Bean 标签基本属性

Spring XML Bean 标签基本属性1. 标签属性介绍:idbean 名称,默认为 类名;class 被代理类的 class;name:相当于 alias,bean 别名,多个别名用 ‘,’ 隔开;parent:首先 parent 并不指 bean 对象的继承关系,它是指的是 标签的继承关系,既一个 标签可以通过 parent 继承到另一个 标签的所有数据,避免一些重复数据的重复书写;scope:作用域,表示这个 bean 的作用范围,默认有 sing

2020-07-19 22:12:03 353

空空如也

空空如也

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

TA关注的人

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