dbutils工具

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了dbutils工具相关的知识,希望对你有一定的参考价值。

元数据

技术分享
问题:元数据是什么,有什么作用? 
元数据(metaData) 指数据库中 库、表、列的定义信息 

1.DataBaseMetaData 数据库元数据(了解)
问题:怎样获取一个DataBaseMetaData?

Connection接口中定义了一个方法 getMetaData();

问题:常用API

String driverName = dmd.getDriverName(); //获取驱动名称
System.out.println(driverName);

String userName = dmd.getUserName();//获取用户名
System.out.println(userName);

String url = dmd.getURL();//获取url
System.out.println(url);

String databaseProductName = dmd.getDatabaseProductName(); //获取数据库名称
System.out.println(databaseProductName);

String databaseProductVersion = dmd.getDatabaseProductVersion();//获取数据库版本.
System.out.println(databaseProductVersion);

ResultSet getPrimaryKeys(String catalog,
String schema,
String table)
throws SQLException
获取表中主键相关描述
每个主键列描述都有以下列:
TABLE_CAT String => 表类别(可为 null) 
TABLE_SCHEM String => 表模式(可为 null) 
TABLE_NAME String => 表名称 
COLUMN_NAME String => 列名称 
KEY_SEQ short => 主键中的序列号(值 1 表示主键中的第一列,值 2 表示主键中的第二列)。 
PK_NAME String => 主键的名称(可为 null2.ParameterMetaData 参数元数据
参数元数据主要用于获取:sql语句中占位符的相关信息.

问题:怎样获取ParameterMetaData?
在PreparedStatement中有一个方法getParameterMetaData可以获取.

问题:怎样使用?
int count = pmd.getParameterCount(); // 获取参数 个数
System.out.println(count);

String type1 = pmd.getParameterTypeName(1);//获取参数的类型
System.out.println(type1);

注意:在获取参数类型时会产生异常
java.sql.SQLException: Parameter metadata not available for the given statement
解决方案:
在url后添加参数
jdbc:mysql:///day18?generateSimpleParameterMetadata=true
添加这个参数后,我们在获取,它的结果也是varchar,原因:是mysql驱动的支持问题。 

3.ResultSetMetaData 结果集元数据

问题:怎样获取结果集元数据?
可以通过ResultSet的getMetaData()方法获取.

问题:怎样使用?
System.out.println(rsmd.getColumnCount());//获取结果集中列数量

System.out.println(rsmd.getColumnName(2));//获取结果集中指定列的名称.

System.out.println(rsmd.getColumnTypeName(3));//获取结果集中指定列的类型
View Code

 

以上是关于dbutils工具的主要内容,如果未能解决你的问题,请参考以下文章

java学习日记(day30--dbutils)

Dbutils工具类的使用

数据库——DBUtils和连接池

DBUtils

Java技术之掌握数据库连接工具DBUtils的应用

Java基础学习笔记二十七 DBUtils和连接池