资源简介
java数据库连接(所有的数据库都支持,接口及实现)
代码片段和文件信息
package hzvtc.util;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.util.ArrayList;
import org.apache.commons.dbutils.DbUtils;
import org.apache.commons.dbutils.QueryRunner;
import org.apache.commons.dbutils.ResultSetHandler;
import org.apache.commons.dbutils.handlers.BeanHandler;
import org.apache.commons.dbutils.handlers.BeanListHandler;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
public class DbHelper {
private String dbms; // 数据库类型
private String dbmsDriver; // 数据库驱动
private String host; // 主机
private String port; // 端口
private String db; // 数据库名
private String user; // 用户名
private String password; // 密码
private Class beanClass = null;
private Connection conn = null;
private final Log logger = LogFactory.getLog(DbHelper.class);
/**
* 根据数据库类型设置驱动程序
* @param dbms 数据库类型,如mysql、postgresql等
*/
private void fillDbmsDriver(String dbms) {
if (dbms.equalsIgnoreCase(“postgresql“))
dbmsDriver = “org.postgresql.Driver“;
else if (dbms.equalsIgnoreCase(“mysql“))
dbmsDriver = “org.gjt.mm.mysql.Driver“;
}
/**
* 根据数据库类型设置端口
* @param dbms 数据库类型
*/
private void fillDbmsPort(String dbms) {
if (dbms.equalsIgnoreCase(“postgresql“))
port = “5432“;
else if (dbms.equalsIgnoreCase(“mysql“))
port = “3306“;
}
/**
* 设置数据连接时需要的参数
* @param dbms 数据库类型
* @param host 主机
* @param db 数据库名
* @param user 用户名
* @param password 密码
*/
public DbHelper(String dbms String host String db String user
String password) {
this.dbms = dbms;
fillDbmsDriver(dbms);
this.host = host;
fillDbmsPort(dbms);
this.db = db;
this.user = user;
this.password = password;
}
/**
* 设置数据连接时需要的参数
* @param dbms 数据库类型
* @param host 主机
* @param port 端口
* @param db 数据库名
* @param user 用户
* @param password 密码
*/
public DbHelper(String dbms String host String port String db
String user String password) {
this.dbms = dbms;
fillDbmsDriver(dbms);
this.host = host;
this.port = port;
this.db = db;
this.user = user;
this.password = password;
}
/**
* 加载驱动
*/
public void connect() {
if (conn != null) return;
String strConn =
String.format(“jdbc:%s://%s:%s/%s“ dbms host port db);
DbUtils.loadDriver(dbmsDriver);
try {
conn = DriverManager.getConnection(strConn user password);
} catch (SQLException e) {
logger.error(“Database connection failed!“);
logger.error(e.getMessage());
}
}
/**
* 关闭Connection
*/
public void close() {
try {
DbUtils.close(conn);
conn = null;
} catch (SQLException e) {
logger.error(“Database close failed!“);
logger.error(e.getMessage());
}
}
/**
* 根据无参sql语句进行查询,并返回一个对象,用于单条记录的查询
* @param sql
* @return object
*/
public object query(String sql) {
if (conn ==
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 6749 2008-10-14 12:55 DB连接\DbHelper.java
文件 1040 2008-10-09 13:30 DB连接\DbTest.java
文件 572 2008-10-08 16:25 DB连接\User.java
目录 0 2008-11-12 08:00 DB连接
----------- --------- ---------- ----- ----
8361 4
- 上一篇:java 简易签到表
- 下一篇:java 二叉排序树与平衡二叉树的实现
评论
共有 条评论