随笔 - 545  文章 - 0  评论 - 31  阅读 - 72万 
03 2016 档案
数据库优化1
摘要:数据库优化的目标无非是避免磁盘I/O瓶颈、减少CPU利用率和减少资源竞争。 1、 在业务密集的SQL当中尽量不采用IN操作符 2、 不使用not in 因为它不能应用表的索引。用not exists 或(外连接+判断为空)代替 3、 不使用<>,因为用它只会产生全表扫描。(a<>0改为a>0 or 阅读全文
posted @ 2016-03-29 23:54 反光的小鱼儿 阅读(303) 评论(0) 推荐(0) 编辑
CountDownLatch、CyclicBarrier和Semaphore
摘要:Java并发编程:CountDownLatch、CyclicBarrier和Semaphore 阅读全文
posted @ 2016-03-29 23:21 反光的小鱼儿 阅读(160) 评论(0) 推荐(0) 编辑
多线程学习1
摘要:转载:http://www.cnblogs.com/xrq730/p/5060921.html 1.多线程的作用: 发挥多核CPU的优势; 防止阻塞;(从程序运行效率的角度来看,单核CPU不但不会发挥出多线程的优势,反而会因为在单核CPU上运行多线程导致线程上下文的切换,而降低程序整体的效率。但是单 阅读全文
posted @ 2016-03-29 00:10 反光的小鱼儿 阅读(240) 评论(0) 推荐(0) 编辑
MyBatis:4
摘要:转载:http://www.cnblogs.com/xrq730/p/5289638.html 什么是动态SQL MyBatis的一个强大特性之一通常是它的动态SQL能力。如果你有使用JDBC或其他相似框架的经验,你就明白条件串联SQL字符串在一起是多么地痛苦,确保不能忘了空格或者在列表的最后的省略 阅读全文
posted @ 2016-03-28 00:06 反光的小鱼儿 阅读(341) 评论(0) 推荐(0) 编辑
MyBatis:3
摘要:转载:http://www.cnblogs.com/xrq730/p/5276988.html 前言 前面学习了config.xml,下面就要进入MyBatis的核心SQL映射了,第一篇文章的时候,student.xml里面是这么写的: 基于这个xml,进行扩展和学习。 为什么要使用<![CDATA 阅读全文
posted @ 2016-03-28 00:05 反光的小鱼儿 阅读(260) 评论(0) 推荐(0) 编辑
MyBatis:2
摘要:转载:http://www.cnblogs.com/xrq730/p/5256221.html 前言 前一篇文章,讲了MyBatis入门,讲到了MyBatis有两个基本的配置文件,一个用来配置环境信息,一个用来写SQL语句。前者我把它命名为config.xml,config.xml的内容是: 这是一 阅读全文
posted @ 2016-03-28 00:03 反光的小鱼儿 阅读(250) 评论(0) 推荐(0) 编辑
MyBatis:1
摘要:转载:http://www.cnblogs.com/xrq730/p/5254301.html MyBatis是什么 MyBatis是什么,MyBatis的jar包中有它的官方文档,文档是这么描述MyBatis的: 翻译过来就是:MyBatis是一款支持普通SQL查询、存储过程和高级映射的持久层框架 阅读全文
posted @ 2016-03-28 00:00 反光的小鱼儿 阅读(353) 评论(0) 推荐(0) 编辑
synchronized锁普通方法和锁静态方法
摘要:1.对象锁钥匙只能有一把才能互斥,才能保证共享变量的唯一性 2.在静态方法上的锁,和 实例方法上的锁,默认不是同样的,如果同步需要制定两把锁一样。 3.关于同一个类的方法上的锁,来自于调用该方法的对象,如果调用该方法的对象是相同的,那么锁必然相同,否则就不相同。比如 new A().x() 和 ne 阅读全文
posted @ 2016-03-24 00:01 反光的小鱼儿 阅读(2987) 评论(0) 推荐(0) 编辑
synchronized和ReentrantLock的区别
摘要:转载:http://houlinyan.iteye.com/blog/1112535 基本概念 1、ReentrantLock 拥有Synchronized相同的并发性和内存语义,此外还多了 锁投票,定时锁等候和中断锁等候 线程A和B都要获取对象O的锁定,假设A获取了对象O锁,B将等待A释放对O的锁 阅读全文
posted @ 2016-03-23 23:22 反光的小鱼儿 阅读(27478) 评论(0) 推荐(0) 编辑
4种常用线程池
摘要:http://blog.csdn.net/sd0902/article/details/8395677 阅读全文
posted @ 2016-03-23 00:01 反光的小鱼儿 阅读(195) 评论(0) 推荐(0) 编辑
java深浅拷贝
摘要:转载:http://atjava.iteye.com/blog/1722501 首先我们看看浅拷贝和深拷贝的定义 浅拷贝:只复制一个对象,对象内部存在的指向其他对象数组或者引用则不复制 深拷贝:对象,对象内部的引用均复制 为了更好的理解它们的区别我们假设有一个对象A,它包含有2对象,对象A1和对象A 阅读全文
posted @ 2016-03-21 00:02 反光的小鱼儿 阅读(312) 评论(0) 推荐(0) 编辑
ConcurrentHashMap总结
摘要:ConcurrentHashMap的锁分段技术:可以看做多个hashtable组成一个ConcurrentHashMap,分段加锁。当要修改ConcurrentHashMap结构时,要按顺序加锁每个hashtable,都是fianl类型(数组,元素都是final),保证顺序性,这样不会发生死锁。 C 阅读全文
posted @ 2016-03-16 23:31 反光的小鱼儿 阅读(456) 评论(0) 推荐(0) 编辑
List原理
摘要:ArrayList: ArrayList是一个可变数组实现,实现了List接口的所有方法,并允许存取null值.ArrayList基本上等同与Vector,但它只对writeObject()和readObject()进行了同步. 1. ArrayList使用一个Object的数组存储元素.priva 阅读全文
posted @ 2016-03-16 00:29 反光的小鱼儿 阅读(323) 评论(0) 推荐(0) 编辑
volatile关键字
摘要:volatile是轻量级的synchronized,它在多处理器开发中保证了共享变量的“可见性”。可见性的意思是当一个线程修改一个共享变量时,另外一个线程能读到这个修改的值。 volatile之所以线程安全是因为被volatile修饰的变量不保存缓存,直接在内存中修改,因此能够保证线程之间修改的可见 阅读全文
posted @ 2016-03-15 00:23 反光的小鱼儿 阅读(200) 评论(0) 推荐(0) 编辑
java关键字总结
摘要:static: 用来修饰成员变量和成员方法,也可以形成静态static代码块,可以形成静态内部类,也可以用于静态导包。 1.静态方法中不能用this和super关键字,不能直接访问所属类的实例变量和实例方法(就是不带static的成员变量和成员成员方法),   只能访问所属类的静态成员变量和成员方法 阅读全文
posted @ 2016-03-15 00:07 反光的小鱼儿 阅读(287) 评论(0) 推荐(0) 编辑
手动实现单链表
摘要:???有点问题,再试试单链表:指针是指一个数据元素逻辑意义上的存储位置,链式存储机构是基于指针实现的,每一个节点由一个数据元素和一个指针构成。链式存储结构是用指针把相互关联的元素链接起来。在单链表中,每个节点只有一个直接只想后继元素的指针,而双向链表中每个节点有两个指针,一个只想后继节点一个只想前驱 阅读全文
posted @ 2016-03-11 21:36 反光的小鱼儿 阅读(355) 评论(0) 推荐(0) 编辑
手动实现二叉树及其3种遍历
摘要:package tree; import java.util.LinkedList;import java.util.List; /** * 功能:把一个数组的值存入二叉树中,然后进行3种方式的遍历 * * 参考资料0:数据结构(C语言版)严蔚敏 * * 参考资料1:http://zhidao.ba 阅读全文
posted @ 2016-03-11 21:34 反光的小鱼儿 阅读(375) 评论(0) 推荐(0) 编辑
手动实现ArrayList
摘要:public interface List { public void insert(int i,Object obj)throws Exception; public void delete(int i)throws Exception; public Object getData(int i)t 阅读全文
posted @ 2016-03-11 21:28 反光的小鱼儿 阅读(318) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示