自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 mybatis插件

在insert操作时,会将createTime,createUser,updaetTime,updateUser字段,填充上想要的值。执行时间大于slowSqlCost的sql,会被打印到日志里面,打印的具体内容包括执行的sql,传参,以及执行的方法。在update操作时,将updateTime和updateUser字段,填充上想要的值。字段名和对应字段值,可处理成自己业务中实际想要的。

2024-07-24 16:28:34 158

原创 Transactional注解和Mybatis事务实现

createTransactionIfNecessary()在该方法里面,会将当前数据源存储在TransactionSynchronizationManager.resources成员变量里面,是个ThreadLocal。TransactionAspectSupport.invokeWithinTransaction()事务注解核心方法。TransactionAspectSupport.invokeWithinTransaction()事务注解核心方法。

2024-06-19 17:06:25 285

原创 SpringBoot与Mybatis中一条select语句的执行过程(下)

核心是final Object value = mapping.typeHandler.getResult(rsw.getResultSet(), mapping.column);获取到的value值,通过metaObject.setValue(mapping.property, value);处理完结果后,一步步返回,来到DefaultResultSetHandler.handleRowValuesForSimpleResultMap里面。testMapper.select就有了值,输出正确结果。

2024-06-10 17:54:15 393 1

原创 SpringBoot与Mybatis中一条select语句的执行过程(上)

newStatementHandler会去创建StatementHandler,RoutingStatementHandler里面有个delegate,对应的是实际StatemenHandler,在默认配置下是PreparedStatementHandler。executoryType是SIMPLE,枚举类型有三种,分别是SIMPLE(简单,默认),BATCH(批量)和REUSE(重用)判断是否有RowBounds(分页相关参数),可以用以下写法来触发hasRowBounds判断。

2024-06-09 17:31:13 761

原创 SpringBoot与Mybatis的一级缓存

codeentitycodeentityCachingExecutor.query()方法CachingExecutor是Mybatis二级缓存处理逻辑,默认配置下断点也会进入这里,createCacheKey用来生成缓存的key。根据代码可以看到key与ms的id属性(即:com.xxx.xxxMapper.getAll),分页参数,以及要执行的sql语句有关。接着来到CachingExecutor.query()重载方法BaseExecutor的query()方法。

2024-06-08 13:13:03 361

原创 记一次生产丢日志解决的过程

SpringBoot全局异常日志丢失原因分析以及解决

2024-06-01 17:36:25 1544

原创 多线程事务

多线程事务,AOP,父子线程共享变量

2024-05-26 17:33:28 438

原创 日志管理模块使用Aop使用Request获得前端的传参

日志管理模块是一个常见的功能模块。本文主要就参数获取部分展开,获取之后的存库或其他操作,各位看客可自行选择,本文不进行讨论。/*** 增加reqeust* application/json传 body获取及inpustream增加} };} }定义final byte[] 的body来解决inpustream只能使用一次的问题。/*** body 获取) {= null) {} }

2023-06-14 11:05:11 1694 1

原创 Jackson自动将null对象转为默认值,将Js处理不了大数字转为字符串

SpringBoot开发中,接口返回值中将null对象转成对应的默认值。例如String转为空字符串,Integer转为0SpringBoot项目中,默认使用的是Jackson来进行json序列化,本文对json进行属性配置来完成该功能。另外会讲两个主要功能封装成配置类,可以在yml文件中进行开启或关闭。以上就是今天要讲的内容,本文仅仅简单介绍了Jackson在SpringBoot中的一个使用,而这个使用也可以方便前端对象的一个处理和使用。

2023-06-11 17:59:34 1658

原创 Maven配置镜像,在Idea里面配置Maven

配置Maven镜像,提高jar包下载的速度找到自己的Maven地址,在conf文件里面修改setting.xml文件在里面添加如下:在这里插入<mirrors> <mirror> <id>alimaven</id> <mirrorOf>central</mirrorOf> <name>aliyun maven</name> <url>http://maven.aliyun.com/nexus/co

2021-08-03 17:33:06 145 1

空空如也

空空如也

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

TA关注的人

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