自定义博客皮肤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 4465 1

转载 CGLib与jdk的优缺点

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

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

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

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

2015-03-16 19:44:36 357

转载 快速排序的优化

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

2015-03-12 22:31:23 408

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

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

2015-03-10 14:50:27 295

转载 java 泛型方法类型推导

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

2015-03-09 21:44:23 407

转载 session.merge ()方法

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

2015-03-09 20:34:17 409

转载 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 416

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

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

2015-03-08 10:24:29 385

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

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

2015-03-04 19:24:48 1527

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

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

2015-03-03 22:14:00 395

转载 String intern()方法

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

2015-03-03 14:24:19 310

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

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

2014-06-05 15:32:57 447

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

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

2014-05-27 10:42:56 394

翻译 HDFS再平衡器

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

2014-04-04 11:13:01 782

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

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

2014-04-04 08:38:38 1591

翻译 hadoop 机架感知技术

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

2014-04-03 22:24:34 394

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

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

2013-12-23 13:57:03 751

原创 重写与重载

2013-11-12 14:39:55 289

原创 判断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 1341

空空如也

空空如也

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

TA关注的人

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