去重 在项目开发中我们常常需要针对某个或多个字段进行去重,而distinct是mysql中去重最常用的方法,但是他也有自己的局限性。使用distinct时,去重字段必须放在distinct后面,但distinct后可以跟多个字段,表示通过多字段联合去重;distinct左边不能有字段,否则会报错。并 Read More
tomcat是我们常用的web容器,它的性能高低直接影响到应用对外提供服务的能力和用户的体验,所以tomcat的优化至关重要。对于单台tomcat服务器而言,优化主要是两方面:内存优化和配置优化(例如,连接数,线程池,iO等),当然还有使用tomcat原生库。除了这些tomcat本身固有配置优化,还 Read More
基本介绍 synchronized是Java实现同步的一种机制,它属于Java中关键字,是一种jvm级别的锁。synchronized锁的创建和释放是此关键字控制的代码的开始和结束位置,锁是有jvm控制的创建和释放的,正是因为这一点,synchronized锁不需要手动释放,哪怕是代码出现异常,jv Read More
基本介绍 java.util.concurrent.locks是java1.5之后出现的一种锁实现方式,是一个接口。但是在这之前已经有一个同步机制的实现就是synchronized关键字,那为什么还要再出现一个LOCK接口呢?最主要的原因就是为了弥补synchronized使用中的不足。 synch Read More
基本介绍 ThreadLocal很多地方叫线程本地变量,或者叫线程本地存储。ThreadLocal为每一个使用该变量的线程都提供一个变量值的副本,是每一个线程都可以独立地改变自己的副本,而不会和其它线程的副本冲突,实现线程间的数据隔离,至于是如何实现的,下面会在实现原理中介绍。但是我们需要知道,th Read More
基本介绍 事务是数据一致性最基本的保证,也就是说一个事务中的操作要么都成功,要么都失败,不允许部分成功。我们常说的事务就是jdbc事务,当然Java中还有其他事务,并且在使用jdbc事务有很多注意点,请详细了解“注意点”中的内容。但是这里有个误区,因为我们一般是使用spring的注解@Transac Read More
cp 基本介绍 cp主要用于同一台服务器上,目录和文件的复制 表达式 cp [OPTIONS] SOURCE DEST 从源路径copy文件到目的路径 常用参数 -a same as -dpR 尽可能将源文件状态、权限等资料都照原装予以复制,并且是递归copy; -r 表示递归copy,若sourc Read More