上一页 1 ··· 27 28 29 30 31 32 33 34 35 ··· 61 下一页

2020年2月1日

java中正则表达式的运用及示例

摘要: 限定符(量词): *表示零次或多次,+表示至少一次,?表示最多一次。{n}表示n次,{n,}表示至少n次。 中括号表达式: []表示或. 如[afg]表示一个为a或者f或者g的字母。 中括号内的-表示范围。[0-9]表示数字0到9中的一个,[0-9]+表示至少一个数字。 [A-Za-z]表示一个任意 阅读全文

posted @ 2020-02-01 22:56 乐之者v 阅读(507) 评论(0) 推荐(0)

2020年1月14日

ThreadLocal源码简解

摘要: 一、ThreadLocal ThreadLocal,线程副本变量。 ThreadLocal,保证了每个线程都有独立的对象副本,保证了对象的唯一性,可以实现线程安全性。 UML图 如下所示: set(T value) 调用ThreadLocal的set(T value)和get()方法时,内部会使用到 阅读全文

posted @ 2020-01-14 13:50 乐之者v 阅读(300) 评论(0) 推荐(0)

2019年12月23日

实践理解Mysql事务隔离级别之可重复读

摘要: 可重复读 Mysql的事务隔离级别,默认是可重复读(repeatable read)。 以下通过具体的sql操作去理解可重复读。 建表 CREATE DATABASE test; USE test; CREATE TABLE ( int(11) NOT NULL AUTO_INCREMENT COM 阅读全文

posted @ 2019-12-23 17:21 乐之者v 阅读(1422) 评论(0) 推荐(0)

2019年12月16日

AQS源码的简单理解

摘要: 概念 AQS全称 AbstractQueuedSynchronizer。 AQS是一个并发包的基础组件,用来实现各种锁,各种同步组件的。它包含了state变量、加锁线程、等待队列等并发中的核心组件。 ReentrantLock、Semaphore、CountDownLatch、FutrueTask, 阅读全文

posted @ 2019-12-16 23:40 乐之者v 阅读(454) 评论(0) 推荐(0)

2019年12月6日

java线程池源码的理解

摘要: 线程池 新建线程和切换线程的开销太大了,使用线程池可以避免频繁的创建和销毁线程,让创建的线程进行复用,节省系统资源。 线程池的关键类:ThreadPoolExecutor。 该类中包含了大量的多线程与并发处理工具,包括ReentrantLock、AtomicInteger、AQS、CAS、Block 阅读全文

posted @ 2019-12-06 00:07 乐之者v 阅读(408) 评论(0) 推荐(1)

2019年10月16日

《Mysql技术内幕》读书笔记

摘要: 第一章 MySql存储引擎 1.Innodb存储引擎 支持事务,其特点是行锁设计、支持外键。 Innodb是Mysql默认的存储引擎。 2.MyISAM存储引擎 MyIsam存储引擎不支持事务和表锁设计,Myisam也不支持外键,但是支持全文索引。 第五章 索引与算法 1.常见的索引:B+树索引、全 阅读全文

posted @ 2019-10-16 10:58 乐之者v 阅读(528) 评论(0) 推荐(0)

2019年10月14日

使用dozer将DTO转化为DO

摘要: DTO,就是Data Transfer Object,数据传输对象,可以简单理解成请求中的对象。 PO,就是Persistant Object,持久化对象,它跟持久层(通常是关系型数据库)的数据结构形成一一对应的映射关系,如果持久层是关系型数据库,那么,数据表中的每个字段(或若干个)就对应PO的一个 阅读全文

posted @ 2019-10-14 21:00 乐之者v 阅读(950) 评论(0) 推荐(0)

2019年9月30日

记一次Mysql事务隔离级别的坑

摘要: 最近在写代码调试时,遇到了一个问题。 遇到问题 具体操作如下: 1.调用方法A,并且方法A加上了@Transactional事务注解。 2.在方法A内部,查询并更新某个字段F的值。 3.处理其他逻辑。 4.查询并打印日志,记录关键字段的值,包括字段F。 5.方法A结束。 由于刚刚接手这块代码,而且这 阅读全文

posted @ 2019-09-30 00:26 乐之者v 阅读(514) 评论(0) 推荐(0)

2019年9月3日

BigDecimal初始化不要用double类型

摘要: 在进行单价、总价相关的计算时,就会用到BigDecimal。 在初始化时,一个不小心,就可能给自己挖坑。 示例如下: 运行之后,结果为: 源码注释 打开BigDecimal的构造方法,可以发现: 大体意思就是,BigDecimal(double val)这个构造方法有时是无法精确预料的, 传入0.1 阅读全文

posted @ 2019-09-03 00:37 乐之者v 阅读(2839) 评论(0) 推荐(1)

2019年8月28日

在error日志打印异常

摘要: 在日志中打印异常,经常会看到以下的写法: 或者是: 这两种其实都不太好。 e.getMessage只会打印出异常的类型,但是不会显示出错的异常方法堆栈,无法在日志中找出错误代码 而e.printStackTrace();则是将异常打印到控制台,并不是打印到error日志中。 解决方法 看logger 阅读全文

posted @ 2019-08-28 00:27 乐之者v 阅读(2966) 评论(0) 推荐(1)

上一页 1 ··· 27 28 29 30 31 32 33 34 35 ··· 61 下一页

导航