自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

转载 什么时候全表扫描比使用索引扫描能更快?

伟大的Oracle SQL优化器可以判断出在某些情况下,使用全表扫描比使用索引扫描能更快的得到数据结果。有没有想过,她是怎么做到的呢?背后的原理是什么呢?举一个非常好理解的场景(scenario:通过索引读取表中20%的数据)解释一下这个有趣的概念:假设一张表含有10万行数据--------100000行我们要读取其中20%(2万)行数据----20000行表中每行

2015-05-29 19:27:29 4494 1

转载 CGLib与jdk的优缺点

CGLib创建的动态代理对象性能比JDK创建的动态代理对象的性能高不少,但是CGLib在创建代理对象时所花费的时间却比JDK多得多,所以对于单例的对象,因为无需频繁创建对象,用CGLib合适,反之,使用JDK方式要更为合适一些。同时,由于CGLib由于是采用动态创建子类的方法,对于final方法,无法进行代理

2015-04-01 12:43:25 4829 1

转载 Javascript Math ceil()、floor()、round()三个函数的区别

下面来介绍将小数值舍入为整数的几个方法:Math.ceil()、Math.floor()和Math.round()。 这三个方法分别遵循下列舍入规则:◎Math.ceil()执行向上舍入,即它总是将数值向上舍入为最接近的整数;◎Math.floor()执行向下舍入,即它总是将数值向下舍入为最接近的整数;◎Math.round()执行标准舍入,即它总是将数值四舍五入为最接近的整数(这也是

2015-03-16 19:44:36 369

转载 快速排序的优化

基本的快速排序算法   快速排序算法是一种分治技术的内排序算法,其大致思想如下:    首先,在要排序的序列a中选取一个中轴值,而后将a分区成为两个部分,左边的部分b中的元素均小于或者等于中轴值,右边的部分c的元素均大于或等于中轴值。而后通过递归调用快速排序的过程分别对这两个部分进行排序。最后将这两部分产生的结果合并即可得到最后的排序序列。    平均时间复杂度Θ(nlogn),而

2015-03-12 22:31:23 416

转载 面向对象的5条基本设计原则

这几天重新看了一遍《大话设计模式》,发现果然有不同的感悟,而且自己也上网找了《敏捷软件开发—原则、模式与实践》一书来看,那本书的序言中有一段话我觉得很有道理:“美的东西比丑的东西创建起来更廉价,也更快捷。”设计一个软件不关要追求代码的优雅问题,更关乎生产成本等。技术大师们在对软件架构的研究中经历了很长时间的摸索,从面向过程到面向对象,从设计原则到设计模式,总结了许多设计上的经典法则,而我们就只是站

2015-03-10 14:50:27 301

转载 java 泛型方法类型推导

http://blog.csdn.net/zerro99/article/details/6118218编译器判断泛型方法的实际类型参数的过程叫做类型推断,类型推断的实现方法是一种非常复杂的过程.根据调用泛型方法时实际传递的参数类型或返回值类型来推断,具体规则如下:如果某类型变量只在方法参数列表或返回值的一处被调用了,那根据调用该方法时该处的实际类型来确定,即直接根

2015-03-09 21:44:23 413

转载 session.merge ()方法

session.merge ()方法该方法将修改表中记录,其所需要的实体状态为脱管状态,但是注意,它并不影响调用方法前后的状态,也即该实体依然是脱管状,见例6.4。例6.4:session.merge ()方法对状态的变化     public void run() {          //创建UserInfo实例          UserI

2015-03-09 20:34:17 418

转载 java创建对象的几种方式

(1) 用new语句创建对象,这是最常见的创建对象的方法。(2) 运用反射手段,调用java.lang.Class或者java.lang.reflect.Constructor类的newInstance()实例方法。(3) 调用对象的clone()方法。(4) 运用反序列化手段,调用java.io.ObjectInputStream对象的 readObject()方法。

2015-03-09 19:58:36 421

转载 java框架spring中的opensessioninview有什么作用

在hibernate中使用load方法时,并未把数据真正获取时就关闭了session,当我们真正想获取数据时会迫使load加载数据,而此时 session已关闭,所以就会出现异常。 比较典型的是在MVC模式中,我们在M层调用持久层获取数据时(持久层用的是load方法加载数据),当这一调用结束时,session随之关闭,而我们 希望在V层使用这些数据,这时才会迫使load加载数据,我们就希望这时的s

2015-03-08 10:24:29 393

转载 java 中 equals() 相等的两个对象,hashcode() 一定相等

在java中,equals和hashcode是有设计要求的,equals相等,则hashcode一定相等,反之则不然。为何会有这样的要求?在集合中,比如HashSet中,要求放入的对象不能重复,怎么判定呢?首先会调用hashcode,如果hashcode相等,则继续调用equals,也相等,则认为重复。如果重写equals后,如果不重写hashcode,则hashc

2015-03-04 19:24:48 1550

转载 Java 中的语法糖 (Syntactic Sugar)

语法糖(Syntactic Sugar),也叫糖衣语法,是英国计算机科学家彼得·约翰·兰达(Peter J. Landin)发明的一个术语。指的是,在计算机语言中添加某种语法,这种语法能使程序员更方便的使用语言开发程序,同时增强程序代码的可读性,避免出错的机会;但是这种语法对语言的功能并没有影响。Java中的泛型,变长参数,自动拆箱/装箱,条件编译等都是,下面做简单的介绍和分析。泛型

2015-03-03 22:14:00 399

转载 String intern()方法

http://www.cnblogs.com/wanlipeng/archive/2010/10/21/1857513.htmltips:1. new产生的string在堆中,而不在字符串池中,即CONSTANT_String_info中。2. intern()去常量池中查找是否存在该内容为指定字符串的string对象,如果有,则返回一个已有的引用,如果没有,J

2015-03-03 14:24:19 314

转载 AOP、Filter、拦截器,花落知多少

那么现在说的Filter和拦截器又都是什么概念呢?        Filter技术是Servlet2.3新增加的功能,Servlet2.3是sun公司于2000年10月发布的,它的开发者包括许多个人和公司团体,充分体现了sun公司所倡导的代码开放性原则。在众多参与者的共同努力下,Servlet2.3比以往功能都强大了很多,而且性能也有了提高。        那么Filter

2014-06-05 15:32:57 453

转载 Struts2 的Action中取得请求参数值的几种方法

Struts2 的Action中取得请求参数值的几种方法先看GetRequestParameterAction类代码: Java代码  总结: 方法一:当把参数作为Action的类属性,且提供属性的getter/setter方法时,xwork的OGNL会自动把request参数的值设置到类属性中,此时访问请求参数只需要访问类属性即可。 方法二:可以通过ActionCon

2014-05-27 10:42:56 403

翻译 HDFS再平衡器

HDFS数据并不总是均匀存储在datanode中的,如新增加一个datanode节点到集群中。当有新的数据要存储时,namenode会考虑多种因数后再选择datanode来存储数据。因数如下:1 把一个副本存放到client所在的节点中。2 不能把所有副本放在同一个机架上,这样可以避免机架崩溃导致所有副本丢失。3 把其中一个副本存到同一个机架中的节点中,这样可以减少跨机架网络I/O

2014-04-04 11:13:01 796

翻译 hadoop 数据的分段组织和复制流水线

HDFS数据组织是分阶段的客户创建一个文件的请求并不是马上到达NameNode,实际上,HDFS客户把文件数据先存放到本地的一个临时文件上,应用程序间接地向这个文件写数据。当本地文件数据积累到超过一个块的容量时,HDFS客户联系NameNode。NameNode把文件名插入到文件系统结构中,并为之分配数据块。NameNode向客户返有datanode和目标文件块的请求。然后客户把本地的缓存文件

2014-04-04 08:38:38 1615

翻译 hadoop 机架感知技术

HDFS和Map/Reduce 组件具有机架感知

2014-04-03 22:24:34 400

原创 调用wait的语句一定要写在synchronized 方法中吗?

调用wait的语句可以写在synchronized方法中、synchronized段中或者是从两者调出的别的方法中。只要执行wait方法的进程在执行时已经取得对象实例的锁即可。

2013-12-23 13:57:03 765

原创 重写与重载

2013-11-12 14:39:55 297

原创 判断int类型所占字节数

对于多数平台支持的C/C++而言,程序员可能没有认识到32位的C/C++编译器为int类型分配4个字节,而64位和16位的C/C++编译器分别分配8字节和2个字节。如果我们正在使用4个字节整数的最大合法整数值,在16位和64位环境下编程容易产生错误。为了保证不引入这些类型的运行错误,我们有两种手段。第一种方法是用sizeof()操作符,sizeof()返回一个对象所需内存字节数。第二种方法是查

2013-11-11 12:40:32 1371

空空如也

空空如也

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

TA关注的人

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