commons-io.jar:
可以看成是java.io的扩展,用来帮助进行IO功能开发.它包含三个主要的领域:Utility classes-提供一些静态方法来完成公共任务.Filters-提供文件过滤器的各种实现.Streams-提供实用的Stream,reader与writer 实现.
commons-beanutils.jar:
提供对Java 反射和自省API的包装,主要提供了对于JavaBean进行各种操作。
commons-digester.jar:
它能方便地将XML文档所定义的元素转化为JA V A对象,其实它的用法有点象栈(当然内在的原理就是那个古老的东西,只是提供了更高一层的封装)。
commons-lang.jsr:
它扩展了标准java.lang API,增加了字符串操作方法、基本数值方法、对象反射、创建和串行化以及System 属性。它还包含一个可继承的enum 类型、对多种嵌套的Exception 类型的支持、对java.util.Date 的增强以及用于构建方法的实用程序,例如自动生成toString()的结果、自动实现hashCode()和equals()方法、数组操作、枚举、日期和时间的处理等等。
∙ArrayUtils –用于对数组的操作,如添加、查、删除、子数组、倒序、元素类型转换等;
∙BitField –用于操作位元,提供了一些方便而安全的方法;
∙BooleanUtils –用于操作和转换boolean或者Boolean及相应的数组;
∙CharEncoding –包含了Java环境支持的字符编码,提供是否支持某种编码的判断;
∙CharRange –用于设定字符范围并做相应检查;
∙CharSet –用于设定一组字符作为范围并做相应检查;
∙CharSetUtils –用于操作CharSet;
∙CharUtils –用于操作char值和Character对象;
∙ClassUtils –用于对Java类的操作,不使用反射;
∙ObjectUtils –用于操作Java对象,提供null安全的访问和其他一些功能;
∙RandomStringUtils –用于生成随机的字符串;
∙SerializationUtils –用于处理对象序列化,提供比一般Java序列化更高级的处理能力;
∙StringEscapeUtils –用于正确处理转义字符,产生正确的Java、JavaScript、HTML、XML和SQL 代码;
∙StringUtils –处理String的核心类,提供了相当多的功能;
∙SystemUtils –在java.lang.System基础上提供更方便的访问,如用户路径、Java版本、时区、操作系统等判断;
∙Validate –提供验证的操作,有点类似assert断言;
∙WordUtils –用于处理单词大小写、换行等。
commons-codec.jar:
包含一些通用的编码解码算法。包括一些语音编码器,Hex, Base64, 以及URL encoder。
Java代码
1// MD5
2String str = "abc";
3DigestUtils.md5Hex(str);
4// SHA1
5String str = "abc";
6DigestUtils.shaHex(str);
7
8// BASE64
9// 加密
10String str= "abc"; // abc为要加密的字符串
11byte[] b = Bytes(), true);
12System.out.println(new String(b));
13// 解密
14String str = "YWJj"; // YWJj为要解密的字符串
15byte[] b = Base64.Bytes());
16System.out.println(new String(b));
commons-collections .jar:
提供一个类包来扩展和增加标准的Java Collection框架。
∙Bag接口:适用于包含一个对象的多个拷贝的集合
∙Buffer接口:适用于具有顺序的集合类,例如FIFOs(先进先出)
∙BidiMap(双向映射):可以通过值查键,也可以通过键查值
∙Map迭代器:提供了对映射的快速迭代
∙对类型检查进行了封装,确保特定类的实例可以被添加到集合中
∙对转换进行了封装,将集合中的对象转换成被加入时的类型
∙对集合进行组合,使多个集合看起来就像一个集合一样
∙有序映射和set,保持元素添加时的顺序,包括一个基于LRU的map ∙标识映射可以给予对象的==来比较对象,而不是基于equals方法∙引用映射可以允许键and/or值可以有控制的进行回收
∙很多比较器的实现
∙很多迭代器的实现
∙从数组或者枚举到集合的适配器
∙用来测试或者创建典型set理论的集合属性,例如与、或、闭包
commons-dbutil.jar:
对传统操作数据库的类进行二次封装,可以把结果集转化成List (1)org.apachemons.dbutils
DbUtils : 提供如关闭连接、装载JDBC 驱动程序等常规工作的工具类QueryRunner : 该类简单化了SQL 查询,它与ResultSetHandler 组合在一起使用可以完成大部分的数据库操作,能够大大减少编码量。
QueryLoader : 属性文件加载器,主要用于加载属性文件中的SQL 到内存中。
(2)org.apachemons.dbutils.handlers
ArrayHandler :将ResultSet中第一行的数据转化成对象数组ArrayListHandler将ResultSet中所有的数据转化成List,List中存放的是Object[]
BeanHandler :将ResultSet中第一行的数据转化成类对象BeanListHandler :将ResultSet中所有的数据转化成List,List中存放的是类对象
ColumnListHandler :将ResultSet中某一列的数据存成List,List中存放的是Object对象
KeyedHandler :将ResultSet中存成映射,key为某一列对应为Map。Map 中存放的是数据
MapHandler :将ResultSet中第一行的数据存成Map映射MapListHandler :将ResultSet中所有的数据
存成List。List中存放的是Map ScalarHandler :将ResultSet中一条记录的其中某一列的数据存成Object (3)org.apachemons.dbutils.wrappers
SqlNullCheckedResultSet :该类是用来对sql语句执行完成之后的的数值
进行null的替换。
StringTrimmedResultSet :去除ResultSet中中字段的左右空格。Trim()
Java代码
1import java.sql.Connection;
2import java.sql.DriverManager;
3import java.sql.SQLException;
springframework jar包下载4import java.util.List;
5import java.util.Map;
6import org.apachemons.dbutils.DbUtils;
7import org.apachemons.dbutils.QueryRunner;
8import org.apachemons.dbutils.handlers.MapListHandler;
9public class DbutilsJDBCTest{
10public static void main(String[] args) {
11 Connection conn = null;
12 String jdbcURL =
"jdbc:mysql://127.0.0.1:3306/publish?useUnicode=true&characterEncoding=GBK"
;
13 String jdbcDriver = "sql.jdbc.Driver";
14try {
15 DbUtils.loadDriver(jdbcDriver);
16 // Username "root". Password "root"
17 conn = Connection(jdbcURL, "root", "root");
18 QueryRunner qRunner = new QueryRunner();
19 System.out.println("***Using MapListHandler***");
20 //以下部分代码采用Map存储方式,可以采用Bean的方式代替进行处
理
21 List lMap = (List) qRunner.query(conn,
22 "select title,authors from books", new
MapListHandler());
23 //以下是处理代码,可以抽取出来
24System.out.println("title ------------- authors ");
25for (int i = 0; i < lMap.size(); i++) {
26 Map vals = (Map) (i);
27
System.out.("title")+"-------------"+ ("authors"));
28 }
29 } catch (SQLException ex) {
30 ex.printStackTrace();
31 } finally {
32 DbUtils.closeQuietly(conn);
33 }
34 }
35}
36/**
37上例在处理结果集时,它把数据库中的每一行映射成一个Map,其中列名作为Key,该列对应的值作为Value存放,
38查询的所有的数据一起放在一个List里,然后进行处理,当然,一个更明智的处理是直接返回List然后再单独进行处理。
39事实上上例返回的结果集中的每一行不必放在一个Map里,你可以放在一个Bean 里,
40
41如果使用Bean而不是用Map,那么,你也许需要建立一个Bean,如下:
42**/
43package st;
44public class Book {
45public int id;
46public String title;
47public String authors ;
48public StudentBean() {
49 }
50public String getAuthors() {
51return authors;
52 }
53public void setAuthors(String authors) {
54this.authors = authors;
55 }
56public int getId() {
57return id;
58 }
59public void setId(int id) {
60this.id = id;
61 }
62public String getTitle() {
63return title;
64 }
65public void setTitle(String title) {
66this.title = title;
67 }
68}
69/**
70然后简单修改一下DbutilsJDBCTest 中的部分代码即可,代替之后的源代码如下:71**/
72
73import java.sql.Connection;
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论