关闭

转载-数据库的四种事务隔离级别

SET TRANSACTION ISOLATION LEVEL 一、未提交读READ UNCOMMITTED(脏读) 意义:包含未提交数据的读。例如,在多用户环境下,用户B更改了某行。用户A在用户B提交更改之前读取已更改的行。如果此时用户B再回滚更改,则用户A便读取了逻辑上从未存在过的行。 演示: 1)用户B: BEGIN TRAN UPDATE test SE...
阅读(113) 评论(0)

转载-cpu伪共享问题

CPU内部也会有自己的缓存,内部的缓存单位是行,叫做缓存行。在多核环境下会出现CPU之间的内存同步问题(比如一个核加载了一份缓存,另外一个核也要用到同一份数据),如果每个核每次需要时都往内存中存取,这会带来比较大的性能损耗,这个问题一般是通过MESI协议来解决的。           MESI协议中包含M、E、S、I四个状态,分别的意思是: M(修改, Modified):...
阅读(152) 评论(0)

代码生成rapid-generator源码分析

原理 rapid-generator rapidDemo 假设有mysql数据库和表 修改generatorxml文件发在代码根目录就行生成代码会在classes目录加载配置文件主要是 模板文件 生成代码 rapid生成的代码文件 源码分析 常用类 加载配置文件 获取数据库元数据 构建输出模型和处理输出 总结 一个bug 感谢那位哥们提供了这样的好工具之前有个项目比较紧急,基本上开发和设计同步进行,...
阅读(1855) 评论(6)

java-Date\Time\TimeStamp

之前用到的时候,有的地方会混淆,项目代码写完了,周五休息下,正好看看学习下。 java.util.Date 年月日时分秒; java.sql.Date 年月日,对应数据库Date; java.sql.Time 时分秒,对应数据库Time; java.sql.Timestamp 年月日时分秒毫秒,对应数据库Timestamp; 各自的构造函数,现在基本都是传入Long型设置; getTime()方法获...
阅读(312) 评论(0)

JUC源码分析30-线程池-Exchanger

Demo 算法原理 结构 调用方法 exchange doExchange hashIndex createSlot await tryCancel spinWait 总结本想JUC最后一节写下Executors的,然后结束JUC。看了下代码,完全是一个工具类,哎,都是ThreadPoolExecutor、ScheduledThreadPoolExecutor还有callable的封装,代码看起来也...
阅读(284) 评论(0)
    个人资料
    • 访问:62405次
    • 积分:1347
    • 等级:
    • 排名:千里之外
    • 原创:62篇
    • 转载:72篇
    • 译文:1篇
    • 评论:15条
    最新评论