Java
Hello_Nick_Xu
这个作者很懒,什么都没留下…
展开
-
使用Java进行文件压缩
在web开发过程中,进行文件的压缩传输是一种常见的需求。比如一种场景:用户需要下载定时生成的报表,我们需要先对报表文件进行压以方便用户的下载,并减少文件的存储空间。 事实上,JDK已经提供了文件压缩/解压缩的支持,可以生成zip/gzip的压缩格式,并且支持支持“校验和”以检查压缩文件的完整性。通常会使用CRC(循环冗余校验)算法进行校验。 ...原创 2014-01-11 13:52:05 · 129 阅读 · 0 评论 -
Java加密解密快速入门上篇【包括MD5、BASE64、DES、RSA等算法】
搞Java的攻城狮应该比较欣喜若狂的,不仅Sun公司的JDK提供了庞大的类库,而且还有众多的开源组织和个人不断地丰富着Java的生态系统。没错的,诸如MD5、BASE64、DES、RSA等经典加密解密算法,JDK都有提供专门的API来封装相关操作。程序猿只需要了解算法的思想,以及学习如何使用API即可。当然,针对BASE64算法,JDK仅仅提供了非常标准的实现,在某些场景下无法满...2014-08-14 10:00:06 · 500 阅读 · 0 评论 -
Java加密解密快速入门下篇【包括MD5、BASE64、DES、RSA等算法】
在上一篇博客中已经简要的介绍了MD5、BASE64、DES、RSA等算法在Java中的具体应用。现在可以考虑对这些代码封装成一个工具类EncryptUtil,然后再补充一下Commons Codec对BASE64的扩展支持! <一>. EncryptUtil工具类: 1. 使用commons-logging记录异常日志。 2. 提取常量字段、公共字段。 3. 提取...2014-08-14 10:07:52 · 188 阅读 · 0 评论 -
JVM理论与实践【内存结构】
学Java三年有余,对自己来说JVM一直以来都是黑匣子,看不懂,摸不透。作为一个有技术情节、略带些许完美主义情节的攻城狮,不了解JVM似乎有时候夜不能寐,总觉得有一个未知的世界自己需要探索。理论为实践服务,学习JVM不是因为它好玩,其实一点都不好玩,只是因为它有用罢了。实用主义者总比快餐主义让人踏实。 好吧,好奇心害死猫(Curiosity kills the cat),中秋佳节...2014-09-08 01:26:37 · 176 阅读 · 0 评论 -
JVM理论与实践【堆内存结构与垃圾回收】
在生产环境下,通常都需要对JVM进行参数优化,其中对垃圾回收器的参数优化是一个非常重要的一方面。下面重点介绍Java的堆内存,垃圾回收算法,常用的垃圾回收器以及Java堆内存的分配策略,这些内容将作为对JVM进行垃圾回收参数优化的重要基础。然后通过简单示例验证Java的垃圾回收机制。 【Java堆内存结构】 Java的堆(Heap)是存放对象的内存区域。...2014-09-13 16:57:25 · 136 阅读 · 0 评论 -
JVM理论与实践【类加载器基础】
【 类加载器简介】 类加载器(classloader)用于将类的class文件加载到JVM虚拟机。 JVM有三种加载器,引导类加载器器(bootstrap classloader)、扩展类加载器(extensions classloader)和应用类加载器(application classloader),另外还可以继承java.lang.ClassLoader类创建自定义加载...2014-09-14 01:18:46 · 140 阅读 · 0 评论 -
JVM理论与实践【JVM参数调优】
在生产环境下对Java虚拟机JVM进行参数调优是必不可少的。作为普通的开发人员,如果对JVM的参数优化有一定的了解,即使是从知识体系的完整性来考虑也是大有裨益的。另外,了解JVM的运行原理也有助于编写性能良好的程序,而不是让代码成为服务器CPU和内存的杀手。 【Windows平台的参数调优】 通常我们都在Windows系统下面进行软件开发工作,因此在W...2014-09-21 23:54:40 · 184 阅读 · 0 评论 -
Java Decompiler与代码的优化编译
作为Java码农一枚,不了解Java的Class字节码结构似乎情有可原。但是关于Java代码的编译优化,或许值得一探究竟。我们编写好一个Java类文件之后,通过javac命令将一个*.java文件编译为*.class字节码文件。同样我们可以将一个*.class文件反编译为一个*.java文件。通过研习反编译之后的Java代码和原始代码的不同,我们可以了解一些Java代码编译优...2014-10-31 22:45:11 · 289 阅读 · 0 评论