dbtools.java
来自「java编写的网络购物简洁版」· Java 代码 · 共 175 行
JAVA
175 行
package shop;
import java.sql.*;
import javax.naming.Context;
import javax.naming.InitialContext;
import javax.sql.DataSource;
//封装了有关数据库操作的DBTools类
public class DBTools {
/**
* 建立连接,jdbc—odbc桥连接方法
*/
// public java.sql.Connection getConnection() {
// java.sql.Connection con = null;
// try {
// //驱动
// Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
// //数据源名称为:TestStu
// String url = "jdbc:odbc:TestStu";
// con = java.sql.DriverManager.getConnection(url);
// }
// catch (Exception ex) {
// ex.printStackTrace();
// }
// return con;
// }
/**
* 纯java方法,建立连接,数据库名称为:stu
* @return Connection
*/
// public java.sql.Connection getConnection() {
// String url = "jdbc:microsoft:sqlserver://localhost:1433;databasename=chanpin";
// java.sql.Connection con = null;
// try {
// Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");
// String user = "sa";
// String pwd = "";
// con = java.sql.DriverManager.getConnection(url, user, pwd);
// }
// catch (Exception ex) {
// ex.printStackTrace();
// }
// return con;
// }
//
public java.sql.Connection getConnection() {
Context ctx;
Connection con = null;
try {
ctx = new InitialContext();
DataSource ds = (DataSource)ctx.lookup("java:comp/env/jdbc/chanpin");
con = ds.getConnection();
} catch (Exception e) {
// TODO 自动生成 catch 块
e.printStackTrace();
}
return con;
}
/**
* 关闭连接对象con
* @param con Connection
* @return Connection
*/
//public Connection closeConnection(Connection con)
public void closeConnection(Connection con) {
if (con != null) {
try {
con.close();
}
catch (SQLException ex) {
ex.printStackTrace();
}
}
// return null;
}
/**
* 关闭预编译命令pstmt
* @param pstmt PreparedStatement
*/
public void closePreparedStatement(PreparedStatement pstmt) {
if (pstmt != null) {
try {
pstmt.close();
}
catch (SQLException ex) {
ex.printStackTrace();
}
}
}
/**
* 关闭编译命令stmt
* @param stmt Statement
*/
public void closeStatement(Statement stmt) {
if (stmt != null) {
try {
stmt.close();
}
catch (SQLException ex) {
ex.printStackTrace();
}
}
}
/**
* 关闭记录集对象rs
* @param rs ResultSet
*/
public void closeResultSet(ResultSet rs)
{
if(rs != null)
{
try {
rs.close();
}
catch (SQLException ex) {
ex.printStackTrace();
}
}
}
/**
* 完成增加、修改、删除操作时
* 关闭连接con和预编译pstmt对象
* @param con Connection
* @param pstmt PreparedStatement
*/
public void close(Connection con,PreparedStatement pstmt)
{
closePreparedStatement(pstmt);
closeConnection(con);
}
public void close(Connection con,Statement stmt)
{
closeStatement(stmt);
closeConnection(con);
}
/**
* 完成查询功能时
* 关闭连接con、预编译pstmt、记录集rs对象
* @param con Connection
* @param pstmt PreparedStatement
* @param rs ResultSet
*/
public void close(Connection con,PreparedStatement pstmt,ResultSet rs)
{
closeResultSet(rs);
closePreparedStatement(pstmt);
closeConnection(con);
}
public void close(Connection con,PreparedStatement pstmt,ResultSet rs,Statement stmt)
{
closeResultSet(rs);
closePreparedStatement(pstmt);
closeConnection(con);
closeStatement(stmt);
}
public void close(Connection con,Statement stmt,ResultSet rs)
{
closeResultSet(rs);
closeStatement(stmt);
closeConnection(con);
}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?