自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(14)
  • 资源 (2)
  • 问答 (1)
  • 收藏
  • 关注

原创 ConcurrentHashMap原理分析(转载)

一.Java并发基础当一个对象或变量可以被多个线程共享的时候,就有可能使得程序的逻辑出现问题。在一个对象中有一个变量i=0,有两个线程A,B都想对i加1,这个时候便有问题显现出来,关键就是对i加1的这个过程不是原子操作。要想对i进行递增,第一步就是获取i的值,当A获取i的值为0,在A将新的值写入A之前,B也获取了A的值0,然后A写入,i变成1,然后B也写入i,i这个时候依然是1.当然j...

2012-11-28 15:13:45 69

原创 transient 和Volatile

transient Java语言的关键字,用来表示一个域不是该对象串行化的一部分。当一个对象被串行化的时候,transient型变量的值不包括在串行化的表示中,然而非transient型的变量是被包括进去的class A implements Serializable { private String name; transient private String add...

2012-11-28 10:53:47 66

原创 HashMap源码分析

HashMap源码分析 http://yuyiming.iteye.com/blog/1290273 HashMap用来存储key-value对,内部使用拉链法Hash表作为存储结构,key-value被封装成Entry,Entry也是链表结点。 1. Hash表的内部结构如下: Entry table[]; Java代码 table[0]...

2012-11-27 11:29:10 34

原创 mysql MERGE

MERGE存储引擎把一组MyISAM数据表当做一个逻辑单元来对待,让我们可以同时对他们进行查询。构成一个MERGE数据表结构的各成员MyISAM数据表必须具有完全一样的结构。每一个成员数据表的数据列必须按照同样的顺序定义同样的名字和类型,索引也必须按照同样的顺序和同样的方式定义。假设你有几个日志数据表,他们内容分别是这几年来每一年的日志记录项,他们的定义都是下面这样,YY代表年份:...

2012-11-22 13:52:26 133

原创 MySQL引擎

MySQL数据库引擎取决于MySQL在安装的时候是如何被编译的。要添加一个新的引擎,就必须重新编译MYSQL。在缺省情况下,MYSQL支持三个引擎:ISAM、MYISAM和HEAP。另外两种类型INNODB和BERKLEY(BDB),也常常可以使用。如果技术高超,还可以使用MySQL++ API自己做一个引擎。下面介绍几种数据库引擎: ISAM:ISAM是一个定义明确且历经时间考验的...

2012-11-22 13:29:18 39

原创 eclipse修改codetemplate文件

eclipse修改codetemplate文件操作步骤:打开Window->Preferences->Java->Code Style->Code Templates点击“Import”,导入模板codetemplates.xml文件。http://blog.csdn.net/security08/article/details/5588013...

2012-11-16 20:46:24 131

原创 java bin 目录下的编译脚本

java:bin目录下:javac 编译出class文件,机器可看懂的java 执行javajps 查找正在运行的java进程(常用)javap java反汇编器,分解classjavadoc 根据java源码及其说明生成文档javah 主要用于在JNI开发的时,把java代码声明的JNI方法转化成C\C++头文件jmap 生成jum...

2012-11-16 10:21:48 184

原创 unicode

Unicode(统一码、万国码、单一码)是一种在计算机上使用的字符编码。它为每种语言中的每个字符设定了统一并且唯一的二进制编码,以满足跨语言、跨平台进行文本转换、处理的要求。1990年开始研发,1994年正式公布。随着计算机工作能力的增强,Unicode也在面世以来的十多年里得到普及。 Unicode是国际组织制定的可以容纳世界上所有文字和符号的字符编码方案。Unicode用数字0-0...

2012-11-15 18:16:01 75

原创 mysql解释器

How to find out how MySQL solves a queryRun the following commands and try to understand the output: SHOW VARIABLES; SHOW COLUMNS FROM ...\G EXPLAIN SELECT ...\G FLUSH STATUS; SELECT ...; ...

2012-11-14 23:01:26 299

原创 持续集成

一、什么是持续集成(Continuous Integration)?这个名词已经在软件开发领域持续了N年,一个比较简单的定义如下:持续集成(CI)是一种实践,可以让团队在持续的基础 上收到反馈并进行改进,不必等到开发周期后期才寻找和修复缺陷。通俗一点儿说,就是指对于开发人员的每一次代码提交,都自动地把Repository中所有代码Check out到一个空目录,并且自动运行所有Test...

2012-11-05 11:55:09 44

原创 JDepend使用小记

http://blog.csdn.net/zhengsj/article/details/4148117

2012-11-05 11:53:16 136

原创 DIP原则

“开放-封闭”原则是我们OOD的目标,达到这一目标的主要机制就是“依赖倒转”原则(DIP)这个原则的内容是:要依赖于抽象,不要依赖于具体。或者说是:要针对接口编程,不要对实现编程(Program to an interface, not an implementation)。 对于抽象层次来说,它是一个系统的本质的概括是系统的商务逻辑和宏观的,战略性的决定,是必然性的体现;具体的层次则...

2012-11-05 11:39:23 375

原创 IOC

控制反转(Inversion of Control,英文缩写为IoC)是一个重要的面向对象编程的法则来削减计算机程序的耦合问题。 控制反转还有一个名字叫做依赖注入(Dependency Injection)。简称DI。 应用控制反转,对象在被创建的时候,由一个调控系统内所有对象的外界实体,将其所依赖的对象的引用,传递给它。也可以说,依赖被注入到对象中。所以,控制反转是,关于一个对象如何获取...

2012-11-05 11:33:59 49

原创 RPC

RPC(Remote Procedure Call Protocol)——远程过程调用协议,它是一种通过网络从远程计算机程序上请求服务,而不需要了解底层网络技术的协议。RPC协议假定某些传输协议的存在,如TCP或UDP,为通信程序之间携带信息数据。在OSI网络通信模型中,RPC跨越了传输层和应用层。RPC使得开发包括网络分布式多程序在内的应用程序更加容易。 RPC采用客户机/服务器模式。请...

2012-11-05 10:49:22 55

gradle安装文档

gradle安装文档

2015-05-05

fusionchart 3.1破解

fusionchart 3.1破解版 swf文件

2012-02-28

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

TA关注的人

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