- 博客(7)
- 收藏
- 关注
原创 Mybatis和数据库查询结果不一致,数据比数据库执行结果少,Mybatis结果去重了?
在结果集当中使用到了标签这个就是导致数据集减少的原因,他会根据这个id字段去重,将标签换成标签即可。有时候用了Mybatis组装出来的SQL语句在mybatis实际运行出来和你在数据库运行出来的结果不一致,结果数据有时候会少几条数据。
2024-04-30 14:06:47 584 1
原创 synchronize和lock的区别
synchronize是关键字,是基于c++实现的。lock是接口,源码由jdk提供,语言使用Java实现的。synchronize使用时,退出同步代码块锁就会同步释放,但是lock使用时,需要自己手动去使用锁,调用unlock方法。
2023-08-21 16:10:22 91 1
原创 volatile有什么用?
问题原因:程序运行时,jvm的JIT(即时编译器)会对执行次数多的代码进行优化,将其改为固定的值。用volatile修饰共享变量会在读、写共享变量时加入不同的屏障,阻止其他读写操作越过屏障,从而达到阻止重排序的效果。用volatile修饰共享变量,能够防止编译器等优化发生,让一个线程对共享变量的修改对另一个线程可见。b、在要读取变量的前面加上volatile修饰,告诉JIT不要对volatile修饰的变量进行优化。解决方案:用volatile修饰,他是在共享变量加上不同的屏障保证不会进行指令重排序。
2023-08-21 10:32:14 34 1
原创 计网,操作系统
采用资源复用或共享的方式打破互斥当进程获取了部分资源但是无法获取全部资源,就自动释放已经占用的资源打破不可剥夺条件给进程分配资源时一次性分配其资源,要么不分配打破请求和保持给资源分配一个编号,进程按编号递增的方式请求资源,打破循环等待。
2023-08-17 16:50:29 113 1
原创 MySQL优化
当插入一条数据主键的值所对应的页(page1)已经放不下,这时就会发生也分裂现象。会先创建一个新的页(page3),然后将超过50%的数据移动到新的页(page3)。然后该条数据插入到新数据页(page3),再对链表指针进行重新设置。将(page1)的下一个指向page3,page3的上一个指向page1,将page3的下一个指向page1之前的下一页。
2023-08-17 16:29:41 53 2
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人