自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 JDK5,6,7,8各个版本增加的特性

Java5: (2004.10)1、泛型 Generics:2、枚举类型 Enumeration:3、自动装箱拆箱(自动类型包装和解包)4、可变参数varargs(varargs number of arguments)5、Annotations 它是java中的metadata6、新的迭代语句(for(int n:numbers))7、静态导入(import st...

2014-07-18 17:34:49 137

原创 一套键盘鼠标用于2台电脑的方案

Synergy ubutun下QuickSynergy  http://blog.163.com/howl_prowler/blog/static/26619715201121463352653/ 先存着,以后要用时再试试

2013-11-06 19:36:23 134

原创 guava笔记14-Reflection

todo

2013-10-23 09:28:15 199

原创 guava笔记13-Math

Guava针对数学计算,提供了一些很好用的方法,用来完善jdk的math包的不足。据官方称:guava的math包具有下面优点:(1)充分测试过,bug少(2)优化过,性能很好(3)可读性高 Guava的math包用起来就很简单了,都是些静态方法,用的多自然就记得了。概况的说,主要提供了IntMath,IntegerMath,BigIntegerMath,Double...

2013-10-23 09:28:10 168

原创 guava笔记12-EventBus

JDK从1.0开始就存在Observer和Observable,可以用来完成生产者/消费者这样的需求。其实也是观察者模式的实现。 Guava使用EventBus来实现类似的功能,但是用起来比Observer更方便。直接拿代码来讲解吧。//定义消息实体class EventObj{private String info;public EventObj(String i...

2013-10-23 09:28:03 93

原创 guava笔记11-Hashing

一.Guava提供了一些方法帮助我们生成hash值。主要有下面几个帮助类:HashFunction: hash函数,可以用于创建Hasher对象Hashing:定义了一些hash函数,主要有md5(),murmur3_128(),murmur3_32(),sha1(),sha256(),sha512(),goodFastHash(int bits)。Hasher:计算hash值...

2013-10-22 13:41:29 419

原创 guava笔记10-IO

Java中使用IO Stream直接操作文件的,但是当我们使用这些的时候,往往要经过很多步骤,比如打开文件,关闭文件。很多时候,我们会记得打开文件,但是最后还是一个close()过程,我们总是容易忽略。 一.文件操作Util类Guava建议我们定义所有的IO实体时都使用InputSupplier和OutputSupplier进行包装,这样,我们就不用考虑那么多事情了,简化了操作。...

2013-10-22 13:41:21 169

原创 guava笔记7-Networking

todo

2013-10-22 13:41:08 111

原创 guava笔记9-Ranges

很多时候,我们需要表示一个数据范围,可能会这样传参数:inScope(int min, int max, boolean minInclude, boolean maxInclude)这样的代码看起来很繁琐。Guava提供了一种数据结构叫做Range,正好用于表达这样一种数据。 Range提供了一些静态工厂方法,用于构造各种是否包含边界的范围:Notation...

2013-10-22 13:38:53 93

原创 guava笔记8-Primitives

Java有8中基本数据类型:byte ,short,int,long,float,double,char,boolean。Java并不存在unsigned类型,guava新定义了UnsignedInteger 和 UnsignedLong 分别表示int和long的无符号类型。在com.google.common.primitives中提供了一些util类来对基本类型进行操作。 b...

2013-10-22 13:38:42 299

原创 guava笔记6-Strings

Guava对String提供了四个工具: (1)Joiner:将数组或者集合元素用指定的分隔符进行连接成一个字符串。Joiner.on(",").join(Arrays.asList(1, 5, 7)); // returns "1,5,7"Joiner.on("; ").skipNulls().join("Harry", null, "Ron", "Hermione");方法

2013-10-21 16:22:15 118

原创 guava笔记5-并发

一. ListenableFuture是用来增强Future的功能的。我们知道Future表示一个异步计算任务,当任务完成时可以得到计算结果。如果我们希望一旦计算完成就拿到结果展示给用户或者做另外的计算,就必须使用另一个线程不断的查询计算状态。这样做,不断代码复杂,而且效率低下。ListenableFuture,顾名思义,就是可以监听的Future。我们可以为ListenableFut...

2013-10-21 16:21:27 197

原创 guava笔记4-Function,Predicate

Function和Predicate可以说是Guava最好用的工具了。Function用于把一种类型的对象转化为另一种类型的对象。Predicate用于判断某个对象是否符合一定条件。单用Function和Predicate可能还看不出他的强大,但是配合集合类,就可以极大地简化代码编写。Function可以配合集合的transform方法,来将一个集合转换为另一个集合。FluentIterabl...

2013-10-21 16:20:48 351

原创 guava笔记3-cache

缓存的使用有多种方式,可以使用开源的缓存框架,如ehcache,JCS,cache4j等。Guava也帮我们实现了一个小巧而实用的缓存框架。如果不使用缓存框架,自己实现缓存,很多人首先想到的就是声明一个static的map对象。Guava的缓存框架其实就是这么做的,所有理解起来非常容易。1.    使用CacheLoader构造LoadingCacheCacheLoader有个抽象方法load...

2013-10-21 16:19:49 157

原创 guava笔记2-集合

(1)构造不可变集合不可变集合的优点:1. 避免别人调用时更改集合内容2. 线程安全:因为是只读的,所以多线程条件下是安全的3. 不必考虑集合变化,所以会比可变的集合更加的有效率4. 可以作为常量使用JDK里面Collections.unmodifiableXXX也可以得到不可变的集合,但是是有缺陷的:1. api不友好,用起来麻烦2. 不安全的,unmodifiableXXX返回的集合确...

2013-10-21 16:15:28 181

原创 java强引用,软引用,弱引用,虚引用

todo

2013-09-30 15:03:12 64

原创 guava笔记1-Optional,Preconditions,Ordering,Objects,ComparisonChain,Throwables

 (1)Optional  标识可以为空的对象。   static <T> Optional<T> absent() 返回事实上的空对象。   static <T> Optional<T> of(T reference) 构造一个Optional对象。注意T不能为null,否则将抛异常。   static <T> Iterable&l...

2013-09-26 16:35:30 179

原创 HTTP协议之状态码详解

http://v5browser.iteye.com/blog/1769789

2013-01-17 13:50:34 94

原创 spring源码

Spring源代码解析(一):IOC容器:http://www.javaeye.com/topic/86339Spring源代码解析(二):IoC容器在Web容器中的启动:http://www.javaeye.com/topic/86594Spring源代码解析(三):Spring JDBC:http://www.javaeye.com/topic/87034Spring源代码解析(...

2013-01-15 15:44:20 83

原创 zookeeper

http://www.javabloger.com/article/apache-zookeeper-hadoop.html

2013-01-14 16:48:12 60

原创 NoSQL架构实践(一)——以NoSQL为辅

http://www.infoq.com/cn/news/2011/02/nosql-architecture-practice (1)不改变原有的以MySQL作为存储的架构,使用NoSQL作为辅助镜像存储,用NoSQL的优势辅助提升性能。(代码完成,同步完成)(2)MySQL中只存储需要查询的小字段,NoSQL存储所有数据。...

2011-07-09 23:37:13 54

原创 人人网的技术架构

   人人网的技术博客:http://ugc.renren.com/     InfoQ:我刚才跟那个黄晶老师交流的时候,黄晶老师提到,最近在做两个开源项目,这两个开源项目您给我们简单介绍一下吧?      黄:这两个项目其实也是我们在业务的需求下催生的,一个开源项目是分布式的key-value存储系统。这个项目其实有很多类似的开源项目,包括这个Cassandra等等,那么我们也是在经过需...

2011-07-09 22:19:55 330

hive的安装与使用

      hive的安装非常简单。官方下载地址是:http://hive.apache.org。hive目前最新版本是0.7.0,支持Hadoop 0.20.1 及   0.20.2,由于我这里hadoop的版本是0.19.2,所以我就只能用之前的版本了。我使用的版本是0.5.0,可以支持hadoop 0.17到0.20。貌似现在官网上已经没下载链接了,我放到附件供大家下载吧。    hiv...

2011-06-19 23:08:21 74

原创 hadoop的安装和使用

   hadoop是目前比较流程的分布式计算平台,虽然安装和使用方法官方网站介绍的比较详细,但是其中细节还是挺多的,稍不注意就要走很多弯路,希望通过本文的介绍,大家能够在很短的时间内能将hadoop跑起来。 由于公司云梯用的是0.19.2版本的,所以下面就以这个版本为例,而没有采用目前最新的0.21版本。  hadoop官方网站地址:http://hadoop.apache.org  ...

2011-06-11 18:21:29 190

原创 Java性能分析和bug调试

写的程序效率不高,内存经常溢出,这时候就需要使用一些方法来看下性能问题到底出在哪里。jps,jmap,jconsole,mat... 本文待完善。。

2011-06-11 18:20:34 101

原创 memcached,mongdb,redis,Tokyo Tyrant的安装和使用

    本文准备介绍最常用的四种nosql技术的安装和使用方法,包括如何使用java进行数据访问和操作。    本文的所有操作都在centos5.6版本上测试通过,请保证系统已经安装了gcc,以便make命令可以正常使用,centos上可以使用命令yum install gcc安装。     1. mongodb     mongodb的安装最简单了,官方地址:http://www.m...

2011-06-11 17:53:46 378

log4j学习

以前log4j用的多,但总是有些细节不明白,今天看了下官方文档,学习笔记记录下。log4j里面有三个重要概念:Loggers, Appenders and Layouts(1)Loggers表示一个日志记录器,一个log4j至少要有1个Loggers,就是根日志,在配置文件中可以以log4j.rootLogger来配置,此外,还可以定义很多其它的Loggers,如log4j.logger....

2011-04-19 13:38:24 66

原创 jquery1.5.2的改进

目前jquery最新版是1.5.2,可以到官网下载:http://docs.jquery.com/Downloading_jQuery,其实,也可以直接应用google cdn上的,访问速度相当的快,地址是:http://ajax.googleapis.com/ajax/libs/jquery/1.5.2/jquery.min.jsjquery1.5版本相比之前的版本,有以下一些变化:...

2011-04-15 17:36:17 182

空空如也

空空如也

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

TA关注的人

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