自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

原创 分布式全局不重复ID生成算法

在分布式系统中经常会使用到生成全局唯一不重复ID的情况。本篇博客介绍生成的一些方法。[b]常见的一些方式:[/b]1、通过DB做全局自增操作优点:简单、高效缺点:大并发、分布式情况下性能比较低有些同学可能会说分库、分表的策略去降低DB的瓶颈,单要做到全局不重复需要提前按照一定的区域进行划分。例如:1~10000、10001~20000 等等。但这个灵活度比较低。...

2014-01-17 15:20:06 1307 1

原创 CentOS卸载OpenJdk

[size=large]场景:安装sun的jdk后执行java -version 显示如下内容。出现类似情况需要卸载其他JDK,然后重新安装SUN JDKjava version "1.6.0"OpenJDK Runtime Environment (build 1.6.0-b09)OpenJDK 64-Bit Server VM (build 1.6.0-b09, mixed ...

2013-09-17 18:05:54 57

原创 github maven repository

[size=large]很多人选择在Github上开源项目,但很多开源项目要依赖一些自己写的jar。如何让用户(使用者)可以通过互联网自动下载所依赖的jar呢?下面介绍下通过GitHub做maven repository的过程;1、在GitHub上创建项目(这步操作不细说了,过程很简单,用过GitHub的大家都懂的)例如:我创建的项目名叫 maven-repository2、把...

2012-09-27 10:57:44 137

原创 GO(一)

一、GO1、安装GO下载地址:http://code.google.com/p/go/downloads/list找系统对应安装包,安装后设置环境变量备注:windows下msi安装后会自动设置环境变量2、开发工具2.1、Eclipse 对应插件安装name:GoClipseurl:http://goclipse.googlecode.com/svn...

2012-09-25 17:19:09 32

原创 Go问题汇总

记录学习Go中遇到的问题点滴1、Eclipse创建Go Project时异常GOROOT has not been set. This can be done from the Go preference page.出现该问题的原因是由于没有配置GORoot path引起的在Eclipse中选择 window->Preferences 弹出的菜单中选择 GO,设置GOR...

2012-09-25 17:15:28 32

原创 Linux twm

在linux安装GO,修改了环境变量。GO_PATH=/opt/go/goJAVA_HOME=/usr/java/jdk1.6.0_31PATH=$JAVA_HOME/bin:$GO_PATH/bin[color=red]:[/color]$PATH上面文件中:(冒号)红色标记处,编写的时候写成了;(分号),导致下次linux启动时直接进入了twm(TWM 是TabWi...

2012-09-21 16:18:45 201

原创 java final问题

很多朋友在做web项目升级时,只替换修改类的class文件,而不是整个项目更新,只更新一个类有好处也有坏处,好处就不说了会有很多,坏处呢?下面的事列介绍一种常见的问题。public class Constant { public final static int MAX_AOE = 190;}public class Client { public ...

2012-08-02 18:01:44 13

原创 Linux sysstat常用命令介绍

[size=small]一、sysstat 软件安装 下载sysstat软件包,解压tar zxvf *.tar.gz./configuremakemake install二、sar 命令介绍 sar -h用法: sar [ 选项 ] [ [ ] ]主选项和报告: -b I/O 和传输速率信息状况 -...

2012-06-11 11:09:49 88

原创 Java 条件表达式

[size=medium]public class SanYuanTest { public static void main(String[] args) { char x = 'X'; int i = 0; System.out.println(true? x : 123); System.out.println(true? x : i); Syste...

2012-06-11 11:05:55 58

原创 Java Random

[size=medium]Java Random类可以获取随机数,请看如下代码:public class RandomTest { public static void main(String[] args) { RandomTest.getRandom(); System.out.println("---------------------------"); Ran...

2012-06-11 10:32:42 35

原创 Java 源码阅读系列(一) ByteBuffer.equals

首先看下ByteBuffer里面的equals方式实现源码,如下:public boolean equals(Object ob) { if (!(ob instanceof ByteBuffer)) return false; ByteBuffer that = (ByteBuffer)ob; if (this.remaining() != that.remain...

2012-05-14 19:11:14 54

原创 Java 进程通信

进程间通信的主要方法有:(1)管道(Pipe):管道可用于具有亲缘关系进程间的通信,允许一个进程和另一个与它有共同祖先的进程之间进行通信。(2)命名管道(named pipe):命名管道克服了管道没有名字的限制,因此,除具有管道所具有的功能外,它还允许无亲缘关系进程间的通信。命名管道在文件系统中有对应的文件名。命名管道通过命令mkfifo或系统调用mkfifo来创建。(3)信号(Sig...

2011-11-25 16:13:58 169

原创 w7 安装net farmework 4失败解决方案

[b][size=medium]错误原因:HRESULT 0xc8000222[/size][/b][size=small]出现上面问题的主要原因是windows update的临时文件损坏 建议重命名该文件夹步骤: 1.开始--运行--cmd--键入net stop WuAuServ回车(停止windows update服务)2.开始--运行--键入%windir%回车(打开...

2011-11-11 17:22:36 86

原创 SSH 连接虚拟机

[b][size=medium]SSH连接本地虚拟机[/size][/b]说明:本地虚拟机为Oracle VM VirtualBox 虚拟系统为ubuntu[b]一、VirtualBox虚拟机网络设置[/b]VirtualBox的提供了四种网络接入模式,它们分别是:1、NAT 网络地址转换模式(Network Address Translation)2、B...

2011-11-11 17:21:38 111

原创 Java ThreadLocal 应用

[b]一、需求介绍[/b]由于项目需要在同一进程不同方法内获取到上下文内容,而在同一线程父方法可以获取到上下文内容,子方法由不同的项目组提供和开发,然后以jar包的方式打包,这时候问题就出现了,父方法的上下文内容如何可以提供给子方法,并在子方法中获取到对应线程的上下文内容?注:每个线程的上下文内容是不同的,父类只提供集成容器,具体方法的实现由不同的项目组和部门编写[b]二、解决...

2011-11-11 17:20:24 28

转载 八两

如果我们给出的关于变量 x 和 i 的声明是如下的合法语句:   x = x + i;  但是,它并不是:   x += i;  乍一看,这个谜题可能看起来与前面一个谜题相同。但是请放心,它们并不一样。 这两个谜题在哪一条语句必是合法的,以及哪一条语句必是不合法的方面,正好 相反。   就像前面的谜题一样,这个谜题也依赖于有关复合赋值操作符的规范中的细节。 二者的相似之处就此打住。基于前面的谜

2009-12-22 17:44:00 216

原创 半斤

现在该轮到你来写些代码了,好消息是,你只需为这个谜题编写两行代码,并为 下一个谜题也编写两行代码。这有什么难的呢?我们给出一个对变量 x 和 i 的声 明即可,它肯定是一个合法的语句:   x += i;  但是,它并不是:   x = x + i;  许多程序员都会认为该迷题中的第一个表达式 (x += i)只是第二个表达式 (x =  x + i)的简写方式。但是这并不十分准确。这两个表达式都

2009-12-22 17:37:00 193

原创 Dos Equis

这个谜题将测试你对条件操作符的掌握程度,这个操作符有一个更广为人知的名 字:问号冒号操作符。下面的程序将会打印出什么呢?   public class DosEquis{          public static void main(String[] args){                   char x = X ;                   int i = 0;    

2009-12-22 17:21:00 246

原创 互换内容

下面的程序使用了复合的异或赋值操作符,它所展示的技术是一种编程习俗。那 么它会打印出什么呢?   public class CleverSwap{          public static void main(String[] args){                   int x = 1984 ; // (0x7c0)                   int y = 2001; /

2009-12-22 17:19:00 240

原创 多重转型

转型被用来将一个数值从一种类型转换到另一种类型。下面的程序连续使用了三 个转型。那么它到底会打印出什么呢?   public class Multicast{          public static void main (String[] args){                   System.out.println((int)(char)( yte) -1);          }

2009-12-22 17:15:00 266

转载 十六进制的趣事

下面的程序是对两个十六进制                 (hex)字面常量进行相加,然后打印出十六进制 的结果。这个程序会打印出什么呢?   public class JoyOfHex {          public static void main(String[] args){                   System.out.println(                 

2009-12-21 11:06:00 634 1

原创 初级问题

下面的程序只涉及加法,它又会打印出什么呢?   public class Elementary {          public static void main(String[] args){                   System.out.println(12345+5432l);          }  }  从表面上看,这像是一个很简单的谜题——简单到不需要纸和笔你就可以解决

2009-12-21 11:02:00 200

原创 长整除

所涉及的程序是有关两个 long 型数值整 除的。被除数表示的是一天里的微秒数;而除数表示的是一天里的毫秒数。这个 程序会打印出什么呢?   public class LongDivision{          public static void main(String args[]){                   final long MICROS_PER_DAY = 24 * 60

2009-12-18 17:58:00 207

转载 找零时刻

请考虑下面这段话所描述的问题:   Tom 在一家汽车配件商店购买了一个价值$1.10 的火花塞,但是他钱包中都是两 美元一张的钞票。如果他用一张两美元的钞票支付这个火花塞,那么应该找给他 多少零钱呢?   下面是一个试图解决上述问题的程序,它会打印出什么呢?   public class Change{          public static void main(String

2009-10-30 09:29:00 337

原创 你准备好求余了吗?奇数性

 下面的方法意图确定它那唯一的参数是否是一个奇数。这个方法能够正确运转 吗?   public static boolean isOdd(int i){          return i % 2 == 1;  }  奇数可以被定义为被 2 整除余数为 1 的整数。表达式 i % 2 计算的是 i 整除 2  时所产生的余数,因此看起来这个程序应该能够正确运转。遗憾的是,它不能; 它在四分之一的时

2009-10-30 09:13:00 473

原创 被人忽视的intern

Stringinternpublic String intern()返回字符串对象的规范化表示形式。一个初始时为空的字符串池,它由类 String 私有地维护。 当调用 intern 方法时,如果池已经包含一个等于此 String 对象的字符串(该对象由 equals(Object) 方法确定),则返回池中的字符串。否则,将此 String 对象添加到池中,并且返回此 Stri

2009-10-28 16:01:00 330

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