自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

  • 博客(204)
  • 资源 (4)
  • 收藏
  • 关注

转载 JAVA中重写equals()方法为什么要重写hashcode()方法?

object对象中的 public boolean equals(Object obj),对于任何非空引用值 x 和 y,当且仅当 x 和 y 引用同一个对象时,此方法才返回 true;注意:当此方法被重写时,通常有必要重写 hashCode 方法,以维护 hashCode 方法的常规协定,该协定声明相等对象必须具有相等的哈希码。如下:(1)当obj1.equals(obj2)为true时

2014-02-27 17:03:37 212

转载 Java加密技术(十二)——*.PFX(*.p12)&个人信息交换文件

今天来点实际工作中的硬通货! 与计费系统打交道,少不了用到加密/解密实现。为了安全起见,通过非对称加密交换对称加密密钥更是不可或缺。那么需要通过什么载体传递非对称算法公钥/私钥信息?数字证书是公钥的载体,而密钥库可以包含公钥、私钥信息。 JKS和PKCS#12都是比较常用的两种密钥库格式/标准。对于前者,搞Java开发,尤其是接触过HTTPS平台的朋友,并不陌生。JKS文件(通常为*.jk

2014-02-26 17:12:10 207

转载 Java加密技术(十一)——双向认证

对于双向认证,做一个简单的描述。 服务器端下发证书,客户端接受证书。证书带有公钥信息,用于验证服务器端、对数据加密/解密,起到OSI五类服务的认证(鉴别)服务和保密性服务。 这只是单向认证,为什么?因为客户端可以验证服务器端,但服务器端不能验证客户端! 如果客户端也有这样一个证书,服务器端也就能够验证客户端,这就是双向认证了! 换言之,当你用银行的“U盾”之类的U盘与银行账

2014-02-26 17:11:25 28981

转载 Java加密技术(十)——单向认证

在Java 加密技术(九)中,我们使用自签名证书完成了认证。接下来,我们使用第三方CA签名机构完成证书签名。     这里我们使用thawte提供的测试用21天免费ca证书。     1.要在该网站上注明你的域名,这里使用www.zlex.org作为测试用域名(请勿使用该域名作为你的域名地址,该域名受法律保护!请使用其他非注册域名!)。     2.如果域名有效,你会收到邮件要求你

2014-02-26 17:10:39 225

转载 Java加密技术(九)——初探SSL

在Java加密技术(八)中,我们模拟了一个基于RSA非对称加密网络的安全通信。现在我们深度了解一下现有的安全网络通信——SSL。     我们需要构建一个由CA机构签发的有效证书,这里我们使用上文中生成的自签名证书zlex.cer     这里,我们将证书导入到我们的密钥库。 Shell代码  keytool -import -alias www.zlex.

2014-02-26 17:09:54 187

转载 Java加密技术(八)——数字证书

本篇的主要内容为Java证书体系的实现。 请大家在阅读本篇内容时先阅读 Java加密技术(四),预先了解RSA加密算法。 在构建Java代码实现前,我们需要完成证书的制作。 1.生成keyStroe文件 在命令行下执行以下命令: Shell代码  keytool -genkey -validity 36000 -alias www.zlex.or

2014-02-26 17:08:59 145

转载 Java加密技术(七)——非对称加密算法最高级ECC

ECC ECC-Elliptic Curves Cryptography,椭圆曲线密码编码学,是目前已知的公钥体制中,对每比特所提供加密强度最高的一种体制。在软件注册保护方面起到很大的作用,一般的序列号通常由该算法产生。     当我开始整理《Java加密技术(二)》的时候,我就已经在开始研究ECC了,但是关于Java实现ECC算法的资料实在是太少了,无论是国内还是国外的资料,无论是官方还

2014-02-26 17:08:22 131

转载 Java加密技术(六)——数字签名算法DSA

接下来我们介绍DSA数字签名,非对称加密的另一种实现。 DSA DSA-Digital Signature Algorithm 是Schnorr和ElGamal签名算法的变种,被美国NIST作为DSS(DigitalSignature Standard)。简单的说,这是一种更高级的验证方式,用作数字签名。不单单只有公钥、私钥,还有数字签名。私钥加密生成数字签名,公钥验证数据及签名。如果数据

2014-02-26 17:07:28 155

转载 Java加密技术(五)——非对称加密算法的由来DH

getPrivateKey(aKeyMap);            System.err.println("甲方公钥:\r" + aPublicKey);          System.err.println("甲方私钥:\r" + aPrivateKey);                    // 由甲方公钥产生本地密钥对儿          Map bKeyMa

2014-02-26 17:00:38 148

转载 Java加密技术(四)——非对称加密算法RSA

Map.get(PUBLIC_KEY);            return encryptBASE64(key.getEncoded());      }        /**      * 初始化密钥      *       * @return      * @throws Exception      */      public static 

2014-02-26 16:59:58 193

转载 Java加密技术(三)——PBE算法

除了DES,我们还知道有DESede(TripleDES,就是3DES)、AES、Blowfish、RC2、RC4(ARCFOUR)等多种对称加密方式,其实现方式大同小异,这里介绍对称加密的另一个算法——PBE PBE     PBE——Password-based encryption(基于密码加密)。其特点在于口令由用户自己掌管,不借助任何物理媒体;采用随机数(这里我们叫做盐)杂凑

2014-02-26 16:59:04 148

转载 Java加密技术(二)——对称加密算法DES&AES

接下来我们介绍对称加密算法,最常用的莫过于DES数据加密算法。 DES DES-Data Encryption Standard,即数据加密算法。是IBM公司于1975年研究成功并公开发表的。DES算法的入口参数有三个:Key、Data、Mode。其中Key为8个字节共64位,是DES算法的工作密钥;Data也为8个字节64位,是要被加密或被解密的数据;Mode为DES的工作方式,有两种:

2014-02-26 16:57:21 129

转载 Java加密技术(一)——BASE64与单向加密算法MD5&SHA&MAC

加密解密,曾经是我一个毕业设计的重要组件。在工作了多年以后回想当时那个加密、解密算法,实在是太单纯了。     言归正传,这里我们主要描述Java已经实现的一些加密解密算法,最后介绍数字证书。     如基本的单向加密算法: BASE64 严格地说,属于编码格式,而非加密算法MD5(Message Digest algorithm 5,信息摘要算法)SHA(Secure Hash

2014-02-26 16:55:04 155

转载 Oracle分页查询

方法一:(适合小数据量)SELECT * FROM(  SELECT ROWNUM as 别名 rn, 别名d.* FROM 表名1 as 别名 d  WHERE ROWNUM)WHERE别名 rn>=11; 方法二速度较稳定,推荐使用SELECT * FROM(   SELECT ROW_NUMBER() OVER (ORDER BY id) AS 别

2014-02-25 15:10:57 141

转载 HttpClient 4.3超时设置

HttpClient 4.3。HttpClient这货和Lucene一样,每个版本的API都变化很大,这有点让人头疼。就好比创建一个HttpClient对象吧,每一个版本的都不一样,3.X是这样的1HttpClient httpClient=new DefaultHttpClient();4.3是这样的

2014-02-25 10:15:59 309

转载 HttpClient4.1.1到4.2升级timeout等参数设定的问题

HttpClient是不错的http工具,可是每次升级api都变化很大,可能是4.x版本时间太短还不够稳定吧。今天在升级的时候遇到了一个问题。http请求设定的超时时间没有用了。之前获取httpclient实例的工具类如下01importorg.apache.http.conn.ClientConnectionManager;02importorg.apac

2014-02-25 09:40:48 380

转载 Springmvc构造RESTful详细讲解

Rest介绍 /blog/1 HTTP GET =>  得到id = 1的blog/blog/1 HTTP DELETE => 删除 id = 1的blog/blog/1 HTTP PUT =>  更新id = 1的blog/blog   HTTP POST =>  新增BLOG    以下详细解一下spring rest使用.    首先,

2014-02-25 09:35:38 141

转载 HttpClient4 Post XML到一个服务器上

现在网上介绍的HttpClient基本上全是3.x版本的内容,HttpClient4的API变化相对3已经变化很大,对HttpClient4做了简单的研究后,完成了一个HttpClient4 Post XML功能。 对于POST方式,最先想到的就是表单提交了,POST XML自然想到的就是定义一个变量名,比如叫xmldata,然后将这个参数的值POST出去,在服务端接收的时候,自然

2014-02-24 15:24:35 169

转载 用RSA加密实现Web登录密码加密传输

通常我们做一个Web应用程序的时候都需要登录,登录就要输入用户名和登录密码,并且,用户名和登录密码都是明文传输的,这样就有可能在中途被别人拦截,尤其是在网吧等场合。这里顺带一个小插曲,我以前有家公司,办公室装修时候安排的网口相对较少,不太够用,于是我和另外一个同事使用了一个hub来共享一个网口,这就导致了很有趣的现象:任何他的网络包我都能抓得到,当然了,我的他也能抓得到。这是不是有很大的安

2013-10-10 08:46:03 264

原创 将博客搬至CSDN

将博客搬至CSDN(技术博客)

2013-08-02 18:31:33 77

原创 一个准架构师的自我修养

一、信仰 每一次次看到星爷抱着一本演员的自我修养,追逐着那个被利益完全淹没的理想; 每一次听到星爷说:如果人没有了梦想,那和一条咸鱼又有什么区别; 每一次我谈起我的技术信仰; 每当这个时候,就会有无数的不屑,但这又如何,我仍然会坚持;二、成功 我喜欢软件设计,软件设计是艺术的一种表现形式,我喜欢它,是因为它能提供一片让大脑无限驰骋的逻辑天空。我更喜欢称朋友能称呼我为一名软件设计师,而非软件工程

2013-08-02 18:31:31 200

原创 用例包含关系与用例扩展关系的区别

包含关系:通常是指一个大的用例包含了几个小的用例,几个小的用例组成一个大的用例; 扩展关系:两个独立的用例,完成一个后可以开启另一个,两个用例本身都是独立的。 例如:用户管理的用例包括用户添加和用户删除;用户登陆用例后可以进行用例退出。

2013-08-02 18:31:28 459

原创 游戏菜单设计“十诫” 要让玩家能直接退回桌面!

每一款游戏离不开菜单,而一款好的游戏也应该有一个好的菜单。可现在许多所谓大作游戏的菜单设计实在令人忍无可忍。下面就是十大游戏菜单应该注意的地方!游戏菜单的“十诫”。第十诫:应该让玩家能跳过商标动画。恼人的引擎、杜比音效、N卡A卡商标,滚吧!第九诫:“继续游戏”选项应该在“开始新游戏”之前!请问,你玩一个游戏,按“新游戏”次数多还是“继续游戏”次数多?第八诫:主菜单前不该出现游戏游戏动画。游戏都买好

2013-08-02 18:31:26 198

原创 Android Errors running builder 'Android Pre Compiler' on 问题处理

Errors occurred during the build.Errors running builder 'Android Pre Compiler' on project 'Paratrooper'.java.lang.NullPointerException遇到这个问题,不用想了,R文件是生成不了的,原因肯定是你的项目目录结构或文件格式有问题。还使用SVN1.6版本的Android开发者

2013-08-02 18:31:24 144

原创 2013年,移动App设计的13大精髓

在过去的一年里,移动成主流也让众多的移动应用如雨后春笋般层出不穷,在众多开发者从中获利的同时竞争也愈演愈烈,如何才能保证自己立于不败之地?用户是上帝,一切还得从应用说起。本文总结了新一年里App设计的13大发展趋势,因为人心所向,所以大势所趋,你了解吗? 1. 扁平化设计         扁平化设计的本质上只是设计美学中的一种,与仿古、高光及金属质感等视觉效果相同。在过去的2012年,无论是单就界

2013-08-02 18:31:22 153

原创 Spring事务配置的五种方式

前段时间对Spring的事务配置做了比较深入的研究,在此之间对Spring的事务配置虽说也配置过,但是一直没有一个清楚的认识。通过这次的学习发觉Spring的事务配置只要把思路理清,还是比较好掌握的。    总结如下:    Spring配置文件中关于事务配置总是由三个组成部分,分别是DataSource、TransactionManager和代理机制这三部分,无论哪种配置方式,一般变化的只是代理

2013-08-02 18:31:17 107

原创 Spring 使用注解方式进行事务管理

大家在使用spring的注解式事务管理时,对事务的传播行为和隔离级别可能有点不知所措,下边就详细的介绍下以备方便查阅。事物注解方式: @Transactional//当标于类前时, 标示类中所有方法都进行事物处理@Transactionalpublic class TestServiceBean implements TestService {}        //当类中某些方法不需要事物时: 

2013-08-02 18:31:15 138

原创 面向对象设计原则

一、抽象类与接口 有的朋友可能会问一个问题,不是说在Java中应该尽量面向接口编程吗,为何模板方法的模板是采用的抽象方法呢?    要回答这个问题,要首先搞清楚抽象类和接口的关系:接口是一种特殊的抽象类,所有接口中的属性自动是常量,也就是public final static的,而所有接口中的方法必须是抽象的抽象类,简单点说是用abstract修饰的类。这里要特别注意的是抽象类和抽象方法的关系,记

2013-08-02 18:31:12 119

原创 UML中类的关系

在java以及其他的面向对象设计模式中,类与类之间主要有6种关系,他们分别是:依赖、关联、聚合、组合、继承、实现。他们的耦合度依次增强。1. 依赖(Dependence)         依赖关系的定义为:对于两个相对独立的对象,当一个对象负责构造另一个对象的实例,或者依赖另一个对象的服务时,这两个对象之间主要体现为依赖关系。定义比较晦涩难懂,但在java中的表现还是比较直观的:类A当中使用了类B

2013-08-02 18:31:10 154

原创 UML类图关系大全

1、关联双向关联:C1-C2:指双方都知道对方的存在,都可以调用对方的公共属性和方法。在GOF的设计模式书上是这样描述的:虽然在分析阶段这种关系是适用的,但我们觉得它对于描述设计模式内的类关系来说显得太抽象了,因为在设计阶段关联关系必须被映射为对象引用或指针。对象引用本身就是有向的,更适合表达我们所讨论的那种关系。所以这种关系在设计的时候比较少用到,关联一般都是有向的。使用ROSE 生成的代码是这

2013-08-02 18:31:08 121

原创 Adapter模式--详解

Adapter模式,就是适配器模式,使两个原本没有关联的类结合一起使用。平时我们会经常碰到这样的情况,有了两个现成的类,它们之间没有什么联系,但是我们现在既想用其中一个类的方法,同时也想用另外一个类的方法。有一个解决方法是,修改它们各自的接口,但是这是我们最不愿意看到的。这个时候Adapter模式就会派上用场了。Adapter模式有两种方式,一种是对象适配器,一种是类适配器。1.对象适配器假如有两

2013-08-02 18:31:06 421

原创 Eclipse右键New菜单项的自定义设置

大家都知道一般在Eclipse中新建一个项目或者文件都是通过菜单项的File-New来创建,然而有些右键出来的选项可能从来都不会使用到,而有些可能会常用到但是右键中又没有,这个时候就可以自定义New中的右键选项,具体设置方式如下:Window --> Customize Perspective... --> Shortcuts --> 选择"New"  进行相关设置即可(如下图)

2013-08-02 18:31:01 164

原创 Android AVD模拟器横屏

alt + f4可以使整个模拟器转化成横向的。

2013-08-02 18:30:59 217

原创 Struts2的Bean使用Spring管理单例问题

如果使用Spring管理了Struts2的Action实例,则Spring默认是使用了单例模式,这和Struts2的设计刚好是相悖的。    这种情况尤其在使用自动扫描装配和逻辑Action时更加难以处理,不过天下没有处理不了的事,只是缺少处理的方法。    用点力还是可以处理的。    Struts2的Action经由Spring创建,是否单例,依赖于struts.xml的action节点的配置

2013-08-02 18:30:57 148

原创 HTML CSS DIV使用经验

Q. 为什么我的 文本 和 INPUT组件、Button组件不能垂直对齐A. 因为html组件的高度和文本的高度不相同,所以就算你使用了line-height也无法对齐,    你可以对html组件(如INPUT),设置一个高度,这个高度和文本一样高,然后使用line-height即可。(神技,亲自创造)Q. 为

2013-08-02 18:30:55 120

原创 ConcurrentHashMap,一个更快的HashMap,Java并发编程

ConcurrentHashMap是一个线程安全的Hash Table,它的主要功能是提供了一组和HashTable功能相同但是线程安全的方法。ConcurrentHashMap可以做到读取数据不加锁,并且其内部的结构可以让其在进行写操作的时候能够将锁的粒度保持地尽量地小,不用对整个ConcurrentHashMap加锁。ConcurrentHashMap的内部结构ConcurrentHashMa

2013-08-02 18:30:53 177

原创 Android隐藏于显示键盘

最近都在推上, 荒废了blog, 所以都没怎么写心得, 对不起大家了哈 (其实也很忙 ;) 现在准备有空就写点实践心得, 希望对大家有帮助. 今天讲的是如何在Android程序中检查虚拟键盘的状态, 如何开启关闭虚拟键盘. 用过Android手机的童鞋们都知道, Android的虚拟键盘是挺挫的~~~ 按键不精确, 反应也很2... 在Android系统服务里有个InputMethodManage

2013-08-02 18:30:50 182

原创 Android 服务器推送技术

在开发Android和iPhone应用程序时,我们往往需要从服务器不定的向手机客户端即时推送各种通知消息,iPhone上已经有了比较简单的和完美的推送通知解决方案,可是Android平台上实现起来却相对比较麻烦,最近利用几天的时间对Android的推送通知服务进行初步的研究。在Android手机平台上,Google提供了C2DM(Cloudto Device Messaging)服务,起初我就是准

2013-08-02 18:30:48 158

原创 论设计的意识

建筑学里有句名言:结构决定质量。在我看来这句话有更加广泛的意义,比如,写作文,经常要打提纲;做论文要定结构;教育方面的体现,重在价值观和人生观的培养,正确的价值观和人生观才能使学者把知识用在正确的用途上。如同一棵小树,在小的时候我们就把他的主干扶直了,剩下的事就吸收养分,必然成为栋梁之材。今天我们主要讲软件,我自己经常设计工具和系统,并深刻地体会到,要做一件事或开发一个东西,如果跳过了结构,直接从

2013-08-02 18:30:46 117

原创 说说大型高并发高负载网站的系统架构

我(本文作者)在CERNET做过拨号接入平台的搭建,而后在Yahoo&3721从事过搜索引擎前端开发,又在MOP处理过大型社区猫扑大杂烩的架构升级等工作,同时自己接触和开发过不少大中型网站的模块,因此在大型网站应对高负载和并发的解决方案上有一些积累和经验,可以和大家一起探讨一下。  一个小型的网站,比如个人网站,可以使用最简单的html静态页面就实现了,配合一些图片达到美化效果,所有的页面均存放在

2013-08-02 18:30:44 111

端口扫描神器 Java版,来自伟大的菠萝群主

端口扫描神器 Java版,来自伟大的菠萝群主 可进行200多线程扫描多个服务器的的开放端口

2014-06-05

struts2,spring,hibernate,json无敌jar包组合

struts2,spring,hibernate,json无敌jar包组合, 强劲的搭配,让你再也不为jar包的问题而烦恼。

2009-10-10

Java版星际争霸及源码

不可多得的游戏源码,有的速度。 包含A× 算法,我以前开发小游戏的时候如果有这个就好了,你们真幸运。。。 估计几天后就要扯资源了。

2009-09-14

struts 2.0 src

这是status2.0的官方源码, 下了不后悔

2009-03-12

空空如也

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

TA关注的人

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