Java学习
学习Java记录
乡下码农
这个作者很懒,什么都没留下…
展开
-
在一个事务的service方法里插入数据并且开启新的线程查询新增数据不一致
批量新增品牌数据, 然后新增完之后,在事务方法里开启线程执行所有品牌数量查询代码如下, 只展示相关代码 @Transactional(rollbackFor = Exception.class) @Override public void add(BrandEntity brand) {// baseMapper.insert(brand); List<BrandEntity> list = new ArrayList();原创 2021-09-25 15:07:16 · 898 阅读 · 0 评论 -
ReentrantLock 在@Transactional事务注解内的Service方法失效
业务场景如下:在单体应用高并发场景, 全校所有学生开始选课, 选课大家都是抢着选择热门的选修课的, 所以会产生高并发, 热门课程的席位是有限的, 比如某个热门课程仅限 100 名学生, 但是高并发场景下,执行以下代码, 经常超过100名学生抢到该热门课程以下代码只是大概, 并非可完整执行, 只是用于解释问题;//可重入锁,默认是非公平锁private Lock lock = new ReentrantLock(true);@Autowiredprivate CourseMapper cou原创 2021-09-03 10:46:54 · 563 阅读 · 1 评论 -
idea启动springboot项目, resources文件不编译, 放到src的xml文件也不编译,每次修改,只删除我修改的那个xml文件, 每次都要执行install
idea启动springboot项目, resources文件不编译, 放到src的xml文件也不编译一开始我的pom文件里放加了配置信息如下, 刚开始还可以,正常编译recourse的xml文件, 后来死活不行, 编译进去, 每次都要手动执行maven插件的install<!-该配置信息无法编译resources文件-> <resources> <resource> <directory>src/main/resource原创 2021-04-15 10:59:21 · 2886 阅读 · 0 评论 -
Java的关键字
关于MySQL创建表报错 Tablespace '`xxxx`' exists 解决办法一解决办法二在MySQL中,使用create table脚本建表时,提示:Tablespace ‘xxxx’ exists 。表已经存在,但是数据库里面根本没有这个表;解决办法一进入MySQL命令行,执行flush tables;命令。亲测,发现不适用于我的情况。解决办法二在操作系统中,进入MySQL...原创 2020-04-21 23:42:06 · 147 阅读 · 0 评论