package com.bjpowernode.drp;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import javax.naming.Context;
import javax.naming.InitialContext;
import javax.sql.DataSource;
/**
* 数据库工具类
* @author Administrator
*
*/
public class DBUtil {
/**
* 取得数据库连接
* @return
*/
public static Connection getConnection() {
Connection conn = null;
try {
//取得jdbc配置信息
JdbcInfo jdbcInfo = ConfigReader.getInstance().getJdbcInfo();
Class.forName(jdbcInfo.getDriverName());
conn = DriverManager.getConnection(jdbcInfo.getUrl(), jdbcInfo.getUsername(), jdbcInfo.getPassword());
} catch (ClassNotFoundException e) {
//记录日志可以将类不能找记录进去,这样可以更准确的定位问题
//但是给用户不应该抛出类不能找到,应该抛出用户能够理解的错误
e.printStackTrace();
throw new AppException("系统出现故障,请联系系统管理员!");
} catch (SQLException e) {
e.printStackTrace();
throw new AppException("系统出现故障,请联系系统管理员!");
}
return conn;
}
public static void close(PreparedStatement pstmt) {
if (pstmt != null) {
try {
pstmt.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
public static void close(Connection conn) {
if (conn != null) {
try {
conn.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
public static void close(ResultSet rs) {
if (rs != null) {
try {
rs.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
public static void commit(Connection conn) {
if (conn != null) {
try {
conn.commit();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
public static void rollback(Connection conn) {
if (conn != null) {
try {
conn.rollback();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
public static void setAutoCommit(Connection conn, boolean autoCommit) {
if (conn != null) {
try {
conn.setAutoCommit(autoCommit);
} catch (SQLException e) {
e.printStackTrace();
}
}
}
public static void close(Statement stmt) {
if (stmt != null) {
try {
stmt.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
public static void main(String[] args) {
DBUtil.getConnection();
System.out.println("---------ok---------");
}
}
最近下载更多
gogola LV1
2022年3月17日
coolliyi LV1
2022年1月27日
1760014638 LV1
2022年1月4日
nsz123456 LV11
2021年12月5日
yqzzcj LV1
2021年9月9日
zm312463 LV1
2021年4月20日
徐梓轩 LV8
2020年11月16日
putifeishu108 LV7
2020年8月11日
Crrrrryttt LV3
2020年6月2日
自行车_1 LV7
2020年4月17日
最近浏览更多
phylory
10月20日
暂无贡献等级
hmf1989
2024年8月23日
暂无贡献等级
genyuan2014 LV6
2024年5月7日
WBelong LV8
2023年12月18日
G0200887
2023年10月22日
暂无贡献等级
微信网友_6669189563338752
2023年9月28日
暂无贡献等级
wbx666 LV1
2023年9月18日
asadda LV2
2023年6月27日
pangzhihui LV14
2023年6月2日
1073931745 LV1
2022年12月13日

