关闭

java中的SPI机制

1.SPI机制简介面向的对象的设计里,我们一般推荐模块之间基于接口编程,模块之间不对实现类进行硬编码。一旦代码里涉及具体的实现类,就违反了可拔插的原则,如果需要替换一种实现,就需要修改代码。为了实现在模块装配的时候能不在程序里动态指明,这就需要一种服务发现机制。 java spi就是提供这样的一个机制:为某个接口寻找服务实现的机制。有点类似IOC的思想,就是将装配的控制权移到程序之外,在模块化设计中...
阅读(135) 评论(0)

mybatis 中#与$的区别

转自http://weijun726.blog.163.com/blog/static/87342299201362652950398/ 1. #将传入的数据都当成一个字符串,会对自动传入的数据加一个双引号。如:order by #user_id#,如果传入的值是111,那么解析成sql时的值为order by "111", 如果传入的值是id,则解析成的sql为order by "id...
阅读(93) 评论(0)

Java集合源码阅读笔记-HashSet

HashSet本文转自http://alex09.iteye.com/blog/539549对于HashSet而言,它是基于HashMap来实现的,底层采用HashMap来保存元素。所以如果对HashMap比较熟悉,那么理解HashSet就比较容易Set接口是一种不包括重复元素的Collection,它维持它自己的内部排序,所以随机访问没有任何意义,基本属性如下:public class HashS...
阅读(84) 评论(0)

自己看一些零散源码的小结

在很多的源码中都是用了下述的这种方式来进行类型转换public class Fruit { public void peel() { System.out.println("peel Fruit"); } }public class Apple extends Fruit { public void peel() { System.out.prin...
阅读(63) 评论(0)

java集合源码阅读笔记-HashMap

//如果x是一个实现了comparable接口则返回x的class对象,反之返回null static Class comparableClassFor(Object x) { if (x instanceof Comparable) { //ParameterizedType表示一个参数化类型,就像Collection一样...
阅读(101) 评论(0)

Java集合源码阅读笔记-LinkedList

本文转自http://blog.csdn.net/ns_code/article/details/35787253 关于LinkedList的源码,给出几点比较重要的总结:     1、从源码中很明显可以看出,LinkedList的实现是基于双向循环链表的,且头结点中不存放数据,如下图;     2、注意两个不同的构造方法。无参构造方法直接建立一个仅包含head节点的空链表,包含...
阅读(72) 评论(0)

JavaScript 语言中的 this

本文参照http://www.ibm.com/developerworks/cn/web/1207_wangqf_jsthis/ 这篇文章而写1.JavaScript 语言中的this由于其运行期绑定的特性,JavaScript 中的 this 含义要丰富得多,它可以是全局对象、当前对象或者任意对象,这完全取决于函数的调用方式。JavaScript 中函数的调用有以下几种方式:作为对象方法调用,作为...
阅读(88) 评论(0)

从is(":checked")说起

转自:http://www.cnblogs.com/season-huang/p/3360869.html *此文所用jQuery版本应大于1.6.1   如何判断一个单选(复选)框是否选中。 对于刚接触jQuery的人,第一反应必然是。 input id="checkbox1" type="checkbox" checked> input id="che...
阅读(50) 评论(0)

easyui学习笔记-datagrid中相关学习

1.easyui DataGrid 里的列数据,并使用自定义列的formatter属性对应函数中三个参数的值:value:当前列对应字段值。 row:当前的行记录数据。 index:当前的行下标。 2.在onclick事件传递对象类型参数,具体内容请参考http://blog.csdn.net/legend11/article/details/53408459 var ele = '<a...
阅读(63) 评论(0)

java基础集合源码阅读笔记

1.数组中元素的移动都是使用 System.arraycopy(Object src, int srcPos, Object dest, int destPos, int length)的本地方法实现的2.在remove方法中:移除元素之后要将之前元素占用的位置设为null方便GC回收3.在batchRemove中使用if (c.contains(elementData[r]) == complem...
阅读(69) 评论(0)

java中路径问题详解

在jsp和class文件中调用的相对路径不同。在jsp里,根目录是WebRoot 在class文件中,根目录是WebRoot/WEB-INF/classes 当然你也可以用System.getProperty("user.dir")获取你工程的绝对路径。 另:在Jsp,Servlet,Java中详细获得路径的方法! 1.jsp中取得路径: 以工程名为TEST为例: (1)得...
阅读(90) 评论(2)

Dubbo+zookeeper入门示例搭建

参考文章:http://blog.csdn.net/doegoo/article/details/49679781 http://www.cnblogs.com/ASPNET2008/p/5622005.html http://www.cnblogs.com/Javame/p/3632473.html-安装zookeeper 1.在官网上下载zookeeper安装文件,解压,重命名zo...
阅读(1480) 评论(3)

几种简单的排序

1.冒泡排序     主要思路: 从前往后依次交换两个相邻的元素,大的交换到后面,这样每次大的数据就到后面,每一次遍历,最大的数据到达最后面,时间复杂度是O(n^2)。 2.选择排序   主要思路:每次遍历序列,从中选取最小的元素放到最前面,n次选择后,前面就都是最小元素的排列了,时间复杂度是O(n^2)。 3.插入排序   主要思路:使用了两层嵌套循环,逐个处理待排序的记录。每个记录与...
阅读(95) 评论(0)

Hadoop MapReduce处理海量小文件:自定义InputFormat和RecordReader

一般来说,基于Hadoop的MapReduce框架来处理数据,主要是面向海量大数据,对于这类数据,Hadoop能够使其真正发挥其能力。对于海量小文件,不是说不能使用Hadoop来处理,只不过直接进行处理效率不会高,而且海量的小文件对于HDFS的架构设计来说,会占用NameNode大量的内存来保存文件的元数据(Bookkeeping)。另外,由于文件比较小,我们是指远远小于HDFS默认Block大小...
阅读(277) 评论(1)

Mapper中setup、map、cleanup的浅析

这个方法调用了上面的三个函数,组成了setup-map-cleanup这样的执行序列,这一点和设计模式中的模版模式很类似,当然在这里我们也可以改写它的源码,比如可以在map的时候增加多线程,这样可以对map任务做进一步的优化,从以上的分析可以很清楚的知道setup函数的作用了。 setup(),此方法被MapReduce框架仅且执行一次,在执行Map任务前,进行相关变...
阅读(1789) 评论(0)
23条 共2页1 2 下一页 尾页
    个人资料
    • 访问:8035次
    • 积分:201
    • 等级:
    • 排名:千里之外
    • 原创:8篇
    • 转载:15篇
    • 译文:0篇
    • 评论:7条
    文章分类