随笔分类 - java
摘要:假如我们没有添加索引,那么在查询时就会触发全表扫描,效率就会比较低。但是即便建立了索引,使用不当也可能导致索引失效。 1.避免使用 or 查询,可以使用 union 或者子查询来替代 早期的 MySQL 版本使用 or 查询可能会导致索引失效,在 MySQL 5.0 之后的版本中引入了索引合并,简单
阅读全文
摘要:java NIO包括了以下几个核心部分: Channel Buffer Selector java NIO是非阻塞IO,比如:线程请求把channel中的数据读入到buffer,当channle执行读数据到buffer时,线程可以去做其他事,不用一直等它。一旦数据读入缓冲区,线程就可以继续处理它。同
阅读全文
摘要:网络编程的基本模型是Client/Server模型,也就是两个进程之间进行相互通信,其中服务端提供位置信息(绑定的IP地址和监听端口),客户端通过连接操作向服务端监听的地址发起连接请求,通过三次握手建立连接,如果连接建立成功,双方就可以通过网络套接字(Socket)进行通信。 IO的方式通常分为几种
阅读全文
摘要:数据库事务的特性包括原子性(Atomicity)、一致性(Consistency)、隔离性(Isolation)和持久性(Durabilily),简称 ACID。 并发事务带来的影响 在数据库执行中,如果多个事务同时对同一份数据进行读写就容易出现数据不一致的情况,如下: 1.出现脏读情况 是指一个事
阅读全文
摘要:什么是单例模式 单例模式指的是,保证一个类只有一个实例,并且提供一个可以全局访问的入口。 为什么需要使用单例模式 那么我们为什么需要单例呢?其中一个理由,那就是为了节省内存、节省计算。因为在很多情况下,我们只需要一个实例就够了,如果出现更多的实例,反而纯属浪费。 下面我们举一个例子来说明这个情况,以
阅读全文
摘要:背景:由于CMS算法产生空间碎片和其它一系列的问题缺陷,HotSpot提供了另外一种垃圾回收策略,G1(也就是Garbage First)算法,该算法在JDK7u4版本被正式推出,官网对此描述如下: The Garbage-First (G1) collector is a server-style
阅读全文