怎么建立一个可以重复调用的数据库JDBC连接
在使用JDBC连接数据库的时,我们会采用executeQuery(Stringsql)获得一个结果集。当数据库结构变化或者获得其他数据库表结果集的时候我们需要将ResultSet结果集根据不同的数据结构重新遍历。
如何才能建立一个与数据库结构无关的JDBC连接呢?我们可以通过使用ResultSetMetaData()方法获得表结构。然后使用Object[]数组遍历结果集。当我们要取得相应的结果时,我们可以使用Iterator迭代器。只要遍历迭代器就可以取出结果。
下面是我写的一个方法:
importjava。math。BigDecimal;
importjava。sql。Connection;
importjava。sql。DriverManager;
importjava。sql。ResultSet;
importjava。sql。ResultSetMetaData;
importjava。sql。SQLException;
importjava。sql。Statement;
importjava。util。ArrayList;
importjava。util。Iterator;
importjava。util。List;
publicclassnewJdbc{
privateStringurl="jdbc:oracle:thin:@localhost:1521:nitpro";
privateStringdbUserName="scott";
privateStringdbUserPassword="tiger";
privateConnectionconn=null;
privateStatementstmt=null;
privateResultSetrs=null;
publicnewJdbc(){
try{
Class。forName("oracle。jdbc。driver。OracleDriver");
}catch(ClassNotFoundExceptione){
e。printStackTrace();
}
}
publicConnectiongetConnection(){
try{
conn=DriverManager。getConnection(url,dbUserName,dbUserPassword);
}catch(SQLExceptione){
e。printStackTrace();
}
returnconn;
}
publicvoidclose(ResultSetrs,Statementstmt,Connectionconn){
if(rs!=null){
try{
rs。close();
}catch(SQLExceptione){
e。printStackTrace();
}
}
if(stmt!=null){
try{
stmt。close();
}catch(SQLExceptione){
e。printStackTrace();
}
}
if(conn!=null){
try{
conn。close();
}catch(SQLExceptione){
e。printStackTrace();
}
}
}
点击查看更多 [程序] [数据库] [jdbc]
(本文来源) https://www.netded.com/a/jishuyingyong/2009/1113/5055.html
版权声明:
作者:[db:作者]
链接:https://www.shoujiroot.com/archives/23477.html
来源:手机教程
文章版权归作者所有,未经允许请勿转载。
共有 0 条评论