自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

  • 博客(22)
  • 资源 (12)
  • 收藏
  • 关注

转载 synchronized 和 Lock

1、ReentrantLock 拥有Synchronized相同的并发性和内存语义,此外还多了 锁投票,定时锁等候和中断锁等候     线程A和B都要获取对象O的锁定,假设A获取了对象O锁,B将等待A释放对O的锁定,     如果使用 synchronized ,如果A不释放,B将一直等下去,不能被中断     如果 使用ReentrantLock,如果A不释放,可以使B在等待了足够长

2012-09-27 22:42:21 843

转载 HashMap以及hash冲突知识

HashMap主要是用数组来存储数据的,我们都知道它会对key进行哈希运算,哈系运算会有重复的哈希值,对于哈希值的冲突,HashMap采用链表来解决的。HashMap是线程不安全的,如果被多个线程共享的操作,将会引发不可预知的问题,据sun的说法,在扩容时,会引起链表的闭环,在get元素时,就会无限循环,后果是cpu100%。Open addressing和Chaini

2012-09-27 22:39:17 3838

转载 聚合索引(clustered index) / 非聚合索引(nonclustered index)

以下我面试经常问的2道题..尤其针对觉得自己SQL SERVER 还不错的同志.. 呵呵 很难有人答得好.. 各位在我收集每个人擅长的东西时,大部分都把SQL SERVER 标为Expert,看看是否答的上来.. 1. 什么是聚合索引(clustered index) / 什么是非聚合索引(nonclustered index)? 2. 聚合索引和非聚合索引有什么区别? 深

2012-09-27 22:37:30 52586 3

转载 SQL 小结

列出有二门以上(含两门)不及格课程的学生姓名及其平均成绩SELECT S.SNO,S.SNAME,AVG_SCGRADE=AVG(SC.SCGRADE) FROM S,SC,(    SELECT SNO FROM SC WHERE SCGRADE    GROUP BY SNO HAVING COUNT(DISTINCT CNO)>=2)A WHERE S.SNO=A.SNO A

2012-09-21 19:01:59 1377

转载 SQL join 中的 on 和 where

SQL步骤:1. join (包括on条件) 2. where 3. operate 数据库在通过连接两张或多张表来返回记录时,都会生成一张中间的临时表,然后再将这张临时表返回给用户。      在使用left jion时,on和where条件的区别如下:1、 on条件是在生成临时表时使用的条件,它不管on中的条件是否为真,都会返回左边表中的记录。2、where条件是在临时表生

2012-09-21 15:14:16 645

转载 JDK 动态代理

1.  首先定义一个接口(JDK的动态代理就是建立在接口编程上,如果一个类没有实现借口,JDK就不会帮你产生对应的动态代理类。但是可以借助CGLIB来直接修改二进制码)public interface UserDao {      publicvoid save(Useruser);}2.  接口的实现类(真实业务的实现)public class UserDaoImpl

2012-09-19 18:13:28 486

转载 ThreadLocal 原理

首先,ThreadLocal 不是用来解决共享对象的多线程访问问题的,一般情况下,通过ThreadLocal.set() 到线程中的对象是该线程自己使用的对象,其他线程是不需要访问的,也访问不到的。各个线程中访问的是不同的对象。另外,说ThreadLocal使得各线程能够保持各自独立的一个对象,并不是通过ThreadLocal.set()来实现的,而是通过每个线程中的new 对象 的操作来

2012-09-19 17:12:01 712

转载 Java 工具类

System:static voidarraycopy(Object src, int srcPos, Object dest, int destPos, int length) 如果参数 src 和 dest 引用相同的数组对象,则复制的执行过程就好像首先将 srcPos 到srcPos+length-1 位置的组件复制到一个带有 length 组件的临时

2012-09-19 16:02:49 598

转载 关于 Map 接口

Map: voidclear()          从此映射中移除所有映射关系(可选操作)。 booleancontainsKey(Object key)          如果此映射包含指定键的映射关系,则返回 true。 booleancontainsValue(Object value)          如果此映射

2012-09-19 14:07:09 454

转载 关于 Collection 接口

Collection: booleanadd(E e)          确保此 collection 包含指定的元素(可选操作)。如果此 collection 不允许有重复元素,并且已经包含了指定的元素,则返回 false booleanaddAll(Collection<? extends E> c)           将指定 collec

2012-09-19 12:02:47 708

转载 关于 Collections

static booleanaddAll(Collection<? super T> c, T... elements)           将所有指定元素添加到指定 collection 中。static intbinarySearch(List<? extends T> list, T

2012-09-18 19:06:48 559

转载 JVM GC 简介

转自http://program-think.blogspot.com/2009/04/java-performance-tuning-3-gc.html  上次的帖子讲到引用类型和基本类型由于内存分配上的差异导致的性能问题。那么今天就来聊一下和内存释放(主要是GC)有关的话题。  事先声明一下:虽说SUN公司已经被Oracle吞并了,但是出于习惯,同时也为了偷懒节省打字,以下仍然

2012-09-18 17:15:19 758

转载 Tips of 垃圾回收 (GC)

绝大多数的对象都在young generation被分配,也在young generation被收回,当younggeneration的空间被填满,GC会进行minor collection(次回收),这次回收不涉及到heap中的其他generation,minor collection根据weak generational hypothesis(弱年代假设)来假设young generation

2012-09-18 17:09:29 768

转载 Using -Xss to adjust Java default thread stack size

Every thread created in a Java program has its own stack space. The stack space used is not allocated from the heap. Infact if you look at the OS report on the memory used by your JVM, you may notice

2012-09-18 16:53:54 2604

转载 JVM内存管理:深入Java内存区域与OOM

转自http://www.iteye.com/topic/802573Java与C++之间有一堵由内存动态分配和垃圾收集技术所围成的高墙,墙外面的人想进去,墙里面的人却想出来。 概述:对于从事C、C++程序开发的开发人员来说,在内存管理领域,他们即是拥有最高权力的皇帝又是执行最基础工作的劳动人民——拥有每一个对象的“所有权”,又担负着每一个对象生命开始到终结的维护责任。对于Ja

2012-09-18 16:37:48 1043

转载 Java中的OutOfMemoryError和JVM内存结构

转自liuchangit.comOutOfMemoryError在开发过程中是司空见惯的,遇到这个错误,新手程序员都知道从两个方面入手来解决:一是排查程序是否有BUG导致 内存泄漏;二是调整JVM启动参数增大内存。OutOfMemoryError有好几种情况,每次遇到这个错误时,观察OutOfMemoryError后面的提示信息,就可以发现不同之处,如:java.lang.OutOfM

2012-09-18 16:08:27 848

转载 String 最大长度 及 String Pool

我们可以使用串接操作符得到一个长度更长的字符串,那么,String 对象最多能容纳多少字符呢?查看String的源代码我们可以得知类String中是使用域 count 来记录对象字符的数量,而count 的类型为 int,因此,我们可以推测最长的长度为 2^32,也就是4G。不过,我们在编写源代码的时候,如果使用 Sting str = "aaaa";的形式定义一个字符串,那么双引号里面的AS

2012-09-18 15:53:20 18964

转载 VisualVM

VisualVM是jvm的可视化监控工具下载地址:http://visualvm.java.net/download.html如果在开发环境,使用什么样的工具是无所谓的,只要能得到结果就好。但是在生产环境里,却不能乱选择,因为这些工具本身就会耗费大量的系统资源,如果在一 个生产服务器压力很大的时候,贸然执行这些工具,可能会造成很意外的情况。最好不要在服务器本机监控,远程监控会比较好一些

2012-09-18 15:22:25 2461

转载 关于 Arrays

static ListasList(T... a)          返回一个受指定数组支持的固定大小的列表。返回一个受指定数组支持的固定大小的列表。(对返回列表的更改会“直接写”到数组,类似的还有List接口的subList()。视图及原列表上的结构性修改要小心)此方法同Collection.toArray() 一起,充当了基

2012-09-09 20:46:11 408

转载 Array.newIntance 返回 Object

In general, use the instanceof operator to test whether an object is an array.At the JVM level, the instanceof operator translates to a specific"instanceof" byte code, which is highly optimized

2012-09-09 20:22:58 506

转载 Spring thread safe

Sorry, but you have completely mixed 2 concepts -thread safety of application context (which is just normal Java object with its own methods) and thread-safety of the beans created by the context as

2012-09-06 15:15:33 602

转载 Log4j tips

XML vs Properties conf:Properties can be defined by a properties file or by an XML file. Log4j looks for a file named log4j.xml and then for a file named log4j.properties.Both must be placed in

2012-09-04 16:49:11 803

Hadoop In Action (Full Version, 非meap版)

Hadoop In Action, Full Version, 正式版, 非meap版 by Chuck Lam

2013-10-28

DOM4J从基础到精通

感谢“雪飘寒”原创与分享 目录 dom4j实例详解 1 目录 1 一、dom4j介绍 2 二、使用dom4j创建xml文档 3 三、使用dom4j解析xml文件 5 1. 构建dom4j树 5 2. 获取节点 5 3. 获取属性 6 4. 使用XPath获取节点和属性 6 四、使用dom4j修改xml文件 7 五、常用方法 8 1.Element元素API 8 2. Attribute属性API 8 2. 字符串转化 8 3. 命名空间(Namespace)操作 8 六、Qname介绍 10 七、Visitor模式 11

2010-12-30

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除