摘要:
问题 在测试事务传播行为的时候,使用单位测试加了@Transactional,一开始是正常,后面出现了异常,即使没有报错的情况下,事务也会自动回滚 代码 @RunWith(SpringRunner.class) @SpringBootTest public class TranTest { @Aut 阅读全文
摘要:
一、一张图看懂 MySQL 的各种 JOIN 用法 二、准备表和数据,测试 1、创建两个表测试 CREATE TABLE `forlan_class`( `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键ID', `class_name` varc 阅读全文
摘要:
一、场景说明 批量插入,返回主键ID报错 org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.executor.ExecutorException: Error getting genera 阅读全文
摘要:
一、场景说明 SELECT * from forlan_table ORDER BY id LIMIT 55000,10; 在很多应用场景中我们需要将数据进行分页,一般会使用limit加上偏移量的方法实现,同时加上合适的orderby 的子句,如果这种方式有索引的帮助,效率通常不错,否则的化需要进行 阅读全文
摘要:
一、场景说明 经常需要查询以及设置手机验证码,一般验证码都是放在Redis,为了节省短信费,可以直接设置Redis,本篇内容主要介绍如何便捷查询和设置手机验证码,非开发人员也会操作。 二、Java代码 1、查询验证码 private static final String host = "127.0 阅读全文
摘要:
通过ReentrantLock来解读AQS源码 //JDK源码 private static volatile int i = 0; public static void main(String[] args) { ReentrantLock lock = new ReentrantLock(); 阅读全文
摘要:
Mybatis拼装 平时我们一般都是这种写法,传一个list对象进去foreach拼接 List<ProductDto> listByProductIds(@Param("productIds")List<Long> productIds); <select id="listByProductIds 阅读全文
摘要:
主要介绍了我们本地统计程序运行时间的三种方式、优缺点,方便大家根据自己的情况去使用 阅读全文
摘要:
场景 经常需要查redis某个key的值,需要执行三条命令才能查到 redis-cli,启动redis select num,选择db get key,查询语句 需要执行三条命令才能实现某个key的查询 有没有一种方式,直接一条命令搞定,并且做成脚本,实现快捷查询? 通过redis+lua实现的ba 阅读全文
摘要:
实现原理 取出记录时,获取当前version更新时,带上这个version执行更新时, set version = newVersion where version = oldVersion如果version不对,就更新失败 实现方式 1.数据库中增加一个version字段,默认值为0 versio 阅读全文