“如果我看得更远一点的话,是因为我站在巨人的肩膀上”。—-牛顿

现行的JAVA项目开发越来越复杂,如果能够掌握一些开源的辅助开发包,并会使你的项目开发工作事半功倍。JAVA库是最为丰富的资源库,如果你在开发项目的过程中发现自己常常囿于一些琐碎的实现细节,而不能集中精力去处理整体的业务流程,那么抽时间去网上找找,九成的可能性你的问题别人也碰到过,而且已经提供了完善的解决方案,这里尤其要感谢google、apache等大牛。
我将我在项目开发过程中常用的一些辅助包进行了简单的整理,未完,欢迎大家补充。
1、日志
有关日志类的很多,常见的是综合slf4j,commons-logging,log4j等等,相互之间的关系参见这里,推荐使用slf4j,可以屏蔽底层实现。
2、命令行 commons-cli-X.X.jar:它为Java 程序访问和解析命令行参数提供了一种统一的接口,小伙伴们在写启动程序时就可以用它完成对于命令行参数的解析,瞬间高大上。
3、参数判断
guava-x.x.jar:Guava 是一个 Google 的基于java1.6的类库集合的扩展项目,里面有很多更好用的类能使你的代码更加简洁,有很多牛逼的功能。我常用里面的Preconditions来进行参数的判断。详情见这里
4、压缩/解压
Commons-Compress.jar,Apache在CommonsCompress中提供了众所周知的tar、cpio、zip等压缩算法实现,其中最为丰富的当属zip实现了,通过这个类可以方便的构建GZip和BZip2的输入输出.其他的还有google的snappy.
5、IO处理
commons-io.jar,是一款处理io流的工具,封装了很多处理io流和文件的方法,可以大大简化我们处理io流和操作文件的代码。从common-io的官方使用文档可以看出,它主要分为工具类、尾端类、行迭代器、文件过滤器、文件比较器和扩展流,我们在IO开发过程中需要使用的多种处理动作在此包中都有了完善的实现,爱死Apache了。详细内容大家百度吧,结果超多,也说明了使用的广泛性。
6、编解码
commons-codec.jar,项目中用来处理常用的编码方法的工具类包,例如DES、SHA1、MD5、Base64, 及 hex, metaphone, soundex 等编码演算。
7、未完待续