自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(25)
  • 收藏
  • 关注

原创 java PriorityQueue 原理分析及源码解读

一个基于优先级堆的无界优先级队列。优先级队列的元素按照其自然顺序进行排序,或者根据构造队列时提供的Comparator 进行排序,具体取决于所使用的构造方法。优先级队列不允许使用null 元素。依靠自然顺序的优先级队列还不允许插入不可比较的对象

2014-07-30 13:26:58 2129

原创 java 线程池之ThreadPoolExecutor

最近被问如何实现一个高效的java 线程池。

2014-05-30 18:55:39 988

原创 javascript bool 强制类型转换

javascript中if条件何时为true呢? 除了有一些能直接比较出结果的表达式之外,对于直接将变量放入if 括号中,何时为true,何时为false呢。下面看具体例子。var a; if(a) { alert("true"); } else { alert("false"); }运行结果为 falsevar a=1; if

2013-12-04 12:53:30 9042 1

原创 java 装箱拆箱简述

装箱和拆箱是jdk1.5新加入的特性,这个特性方便了java基础类型和其对应的对象类型之间的相互转换。8中类型一次对应为:byte->Byteshort->Shortint->Integerlong->Longdouble->Doublefloat->Floatboolean->Booleanchar->Character装箱和拆箱具体怎么样实现的呢?装箱:例如 Integ

2013-08-29 20:58:00 625

原创 maven 下载源码方法

在maven下载jar的时候顺便下载源码的方式有:1.mvn dependency:sources 2.在其他maven命令中加参数 -DdownloadSources=true(注意大小写)如 mvn eclipse:eclipse -DdownloadSources=true

2013-08-29 20:57:57 782

原创 Maven 基础之依赖范围

在dependency标签下有个子标签叫, 这个标签是用来控制所dependency的jar的作用域范围。有一下几个值:compile:编译依赖范围。默认的依赖范围,也是大部分jar的依赖范围, 从编译,测试,运行都需要存在的。test:测试依赖范围,只在编译和运行测试代码的时候需要。如Junitprovided:已提供的依赖范围,对于编译,测试需要存在,运行时是不需要的。 如servlet

2013-08-29 20:57:55 549

原创 FireFox 打开pdf 缓存的问题

场景: 下拉选择框包含不同的pdf id, 选中点击一个button,打开新的窗口,通过javawrite方式,在新窗口里显示的是pdf内容。问题: 如果第一次打开的pdf窗口木有关,回到主页面换另外一个id,点击打开是的之前木有关的窗口里面的内容。暂时解决方法:将点击button提交的form表单的方法改为GET的提交方式,问题不会出现了,但是还需要研究下原因

2013-08-29 20:57:53 863

原创 java 类加载全过程之第二步 验证

在第一步加载完了之后,class文件已经进入虚拟机内存,并形成相关数据结构存储在方法区中。要注意的是,验证过程可以在加载未完全完成时进行。 验证主要是为了确保class文件的字节流中包含的信息符合当前虚拟机的要求,并且不会危害虚拟机自身的安全。验证过程主要做以下一些事情:   1.文件格式验证;魔数,主次版本,常量池是否有不支持的常量类型;指向常量的索引值是否有指向不存在的常量或类型不符的

2013-08-29 20:57:51 601

原创 java 类加载器

接上文, 本文主要熟悉下Java的类加载器,类加载器主要分为以下几种1.启动类加载器(Bootstrap Classloader)这个加载器负责将存放在<javahome>\lib, 或者被-Xbootclasspath参数所指定的路径中,并且是虚拟机识别的类库加载到虚拟机中。 这个类加载器的也就是只能加载指定路径,指定名称的类。这个加载器不能被jav程序直接引用。2.扩展类加载器(E

2013-08-29 20:57:48 618

原创 Java&nbsp;虚拟机类加载机制

个人觉得要弄清楚虚拟机类加载机制,可以从如下两个方面去了解:1.什么是类加载机制及虚拟机加载类的时机。2.加载过程。 首先看看第一个:虚拟机把描述类的数据从class文件加载到内存,并对class文件的合法性进行验证,引用转换及解析,最终形成可以被虚拟机使用的Java类型,这就是虚拟机的类加载机制。由于java的动态扩展特点(就是可以在运行期指定具体类型),所以java的类加载过程都

2013-08-29 20:57:46 510

原创 jdk1.6中文帮助文档官方下载

http://download.java.net/jdk/jdk-api-localizations/jdk-api-zh-cn/publish/1.6.0/chm/JDK_API_1_6_zh_CN.CHM

2013-08-29 20:57:44 949

原创 任务管理器中的用户名不见了

最近发现打开任务管理器的时候,用户名那一列是空白的。经过一番资料查阅,发现问题很简单。解决方法如下:    我的电脑右键-》管理-》服务-》找到Terminal Services,右键属性,设为自动或手动,然后启动就可以了。  或者cmd后在命令行里输入命令:Services.msc。

2013-08-29 20:57:42 1022

原创

Oracle关于时间/日期的操作在oracle中有很多关于日期的函数,如:  1、add_months()用于从一个日期值增加或减少一些月份  date_value:=add_months(date_value,number_of_months)  例:  SQL> selectadd_months(sysdate,12) "Next Year" from dual;  Next

2013-08-29 20:57:39 500

原创 oracle时间处理

Oracle时间日期操作sysdate+(5/24/60/60) 在系统时间基础上延迟5秒sysdate+5/24/60 在系统时间基础上延迟5分钟sysdate+5/24 在系统时间基础上延迟5小时sysdate+5 在系统时间基础上延迟5天add_months(sysdate,-5) 在系统时间基础上延迟5月add_months(sysdate,-5*12)在系统时间基础上延迟5

2013-08-29 20:57:37 614

原创 myeclipse&nbsp;&nbsp;快捷键

MyEclipse 快捷键大全(1)Ctrl+M切换窗口的大小(2)Ctrl+Q跳到最后一次的编辑处(3)F2当鼠标放在一个标记处出现Tooltip时候按F2则把鼠标移开时Tooltip还会显示即Show TooltipDescription。         F3跳到声明或定义的地方。         F5单步调试进入函数内部。         F6单步调试不进入函数内部,如

2013-08-29 20:57:35 562

原创 Mybatis 代码流程及实现原理解析(三)

接上篇, 这篇继续分析XMLMapperBuilder.parse()里的configurationElement() 这个方法。private void configurationElement(XNode context) { try { String namespace = context.getStringAttribute("namespace");//mappe

2013-08-21 14:56:26 2003

Mybatis 代码流程及实现原理解析(三)

接上篇, 这篇继续分析XMLMapperBuilder.parse()里的configurationElement() 这个方法。private void configurationElement(XNode context) { try { //mapper可以加namespace来避免重复情况 String namespace = context.get...

2013-08-21 14:56:00 188

原创 常用命令行

在windows下,有时候想打开一个应用,如计算器, 又不想去点开始- 附件-计算器。 这时候可以运行一些命令快速打开它。操作: 点击开始 - 运行,在弹出框中输入指令。 或者直接win键+R打开弹出框。在弹出框中输入如下指令即可打开相关应用:notepad    ->打开记事本calc           ->打开计算器mspaint     ->打开画图

2013-08-20 14:53:48 635

常用命令行

在windows下,有时候想打开一个应用,如计算器, 又不想去点开始- 附件-计算器。 这时候可以运行一些命令快速打开它。操作: 点击开始 - 运行,在弹出框中输入指令。 或者直接win键+R打开弹出框。在弹出框中输入如下指令即可打开相关应用:notepad -&gt;打开记事本calc -&gt;打开计算器mspaint -&gt;打开画图...

2013-08-20 14:53:00 124

原创 可以查看java字节码的eclipse插件

Bytecode Outline :它是Eclipse的插件,可以把当前的正在编辑Java的文件或者class文件直接显示出其相应的字节码出来,而且可以进行两个Java文件的字节码比较或者两个class文件的字节码比较或一个Java文件与一个class文件进行字节码的比较。  在eclipse下安装.点击help->software update->find and install

2013-08-15 09:41:51 1422

可以查看java字节码的eclipse插件

Bytecode Outline :它是Eclipse的插件,可以把当前的正在编辑Java的文件或者class文件直接显示出其相应的字节码出来,而且可以进行两个Java文件的字节码比较或者两个class文件的字节码比较或一个Java文件与一个class文件进行字节码的比较。方法1.直接拷贝下面两个类到eclipse的plugins文件夹下。asm-4.1.jarde.losku...

2013-08-15 09:41:00 207

原创 Mybatis 代码流程及实现原理解析(二)

XMLConfigBuilder.java中1. propertiesElement(root.evalNode("properties")); 此方法解析及其子节点。代码实现:private void propertiesElement(XNode context) throws Exception { if (context != null) { Prope

2013-07-09 13:46:20 1584

Mybatis 代码流程及实现原理解析(二)

XMLConfigBuilder.java中1.propertiesElement(root.evalNode("properties")); 此方法解析&lt;properties&gt;及其子节点。代码实现:private void propertiesElement(XNode context) throws Exception { if (context != nu...

2013-07-09 13:46:00 117

原创 Mybatis 代码流程及实现原理解析(一)

Mybatis 主要涉及的配置文件:1. sqlMapConfig.xml:这是一个主控文件,对于mybatis的全局配置。2. 具体的mapper xml,这个文件包含具体的sql片段,parameters,result的配置。

2013-07-08 17:56:13 1031

Mybatis 代码流程及实现原理解析(一)

Mybatis 主要涉及的配置文件:1. sqlMapConfig.xml:这是一个主控文件,对于mybatis的全局配置。2. 具体的mapper xml,这个文件包含具体的sql片段,parameters,result的配置。对于第一个配置文件的处理,主要是在这个SqlSessionFactoryBuilder的这个方法进行处理:public SqlSessionFac...

2013-07-08 17:56:00 164

空空如也

空空如也

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

TA关注的人

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