mysql
文章平均质量分 75
mysql
JavaNice哥
Learning is like rowing upstream, not to advance is to drop back
展开
-
mybatis的日志功能是如何设计的
else不好,7种条件判断太多了,并非优雅的编程。定义了LogException异常,该异常是日志功能的专属异常,如果你有看过mybatis其他源码的话,不难发现,其他功能也定义专属异常,比如:DataSourceException等,这是mybatis的惯用手法,主要是为了将异常细粒度的划分,以便更快定位问题。看到这里,聪明的你可能会有这样的疑问,从上图可以看出mybatis定义了8种useXXXLogging方法,但是在前面的static静态代码块中却只调用了6种,这是为什么?我们用一张图来总结一下。原创 2024-05-12 14:40:07 · 285 阅读 · 0 评论 -
mysql,es,mongodb,redis区别与应用场景
mysql,es,mongodb,redis区别与应用场景mysql为sql型数据库es,mongodb,redis为nosql型数据库。原创 2024-02-06 09:14:09 · 483 阅读 · 0 评论 -
排查生产环境:MySQLTransactionRollbackException数据库死锁
一. 问题现状。原创 2024-02-04 11:38:02 · 1426 阅读 · 0 评论 -
全网最全 MySQL EXPLAIN 完全解读
EXPLAIN作为MySQL的性能分析神器,读懂其结果是很有必要的,然而我在各种搜索引擎上竟然找不到特别完整的解读。都是只有重点,没有细节(例如type的取值不全、Extra缺乏完整的介绍等)。所以,我肝了将近一个星期,整理了一下。这应该是全网最全面、最细致的EXPLAIN解读文章了,下面是全文。本文基于MySQL 8.0编写,理论支持MySQL 5.0及更高版本。原创 2024-01-26 10:43:11 · 546 阅读 · 0 评论 -
调优 mybatis saveBatch 25倍性能
稍微总结下我粗略的对比(虽然粗略,但实验结果符合原理层面的理解),如果你想更准确地实验,可以使用JMH,并且测试更多组数(如 5000,10000等)的情况。批量保存方式数据量(条)耗时(ms)单条循环插入1000121011100059927mybatis-plus saveBatch(添加rewtire参数)10002589手动拼接sql10002275100055663jdbc executeBatch(添加rewtire参数)1000324。原创 2024-01-25 09:59:03 · 1191 阅读 · 0 评论 -
mysql外键java. sql. SOLIntegrityConstraintViolationException: Cannot add or update a child row: a fore
mysql外键java. sql. SOLIntegrityConstraintViolationException: Cannot add or update a child row: a foreign key constraint fails。act_ru_identitylink新增记录时由于act_ru_identitylink表的task_id在act_ru_task表中找不到关联记录导致报错。原创 2024-01-08 13:42:35 · 377 阅读 · 0 评论