db.java

来自「JavaBean+Jsp 开发的《手机商城系统》」· Java 代码 · 共 170 行

JAVA
170
字号
package com.test.ps.order;


import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;


/**
 * 专门跟数据库打交道的类
 * 提供和MySQL相关的JDBC的操作方法
 * @author ykn
 *
 */
public class DB {
	
	static String drivername = "com.mysql.jdbc.Driver";
	static String url = "jdbc:mysql://localhost:3306/phoneshop";
	static String username = "root";
	static String password = "1234";
	static Connection conn = null;
	static PreparedStatement pstmt = null;
	static Statement stmt = null;
	static ResultSet rs = null;
    
    // 检查MySQL数据库驱动
    static {
        try {
            Class.forName("com.mysql.jdbc.Driver");
        } catch (ClassNotFoundException e) {
            //System.out.println("与数据库连接的驱动程序未找到。。。");
            e.printStackTrace();
        }
    }

    // 获取连接
    public static Connection getConnection() {
       // Connection conn = null;
        try {
        	conn = DriverManager.getConnection(url, username, password);
        } catch (SQLException e) {
            //System.out.println("获取数据库连接时出现了异常。。。");
            e.printStackTrace();
        }
        return conn;
    }
    
    // 获取表达式语句
    public static Statement getStatement(Connection conn) {
        Statement stmt = null;
        try {
            if (conn != null) {
                stmt = conn.createStatement();
            }
        } catch (SQLException e) {
           // System.out.println("获取表达式语句时出现了异常。。。");
            e.printStackTrace();
        }        
        return stmt;
    }
    
    // 获取预编译表达式语句
    public static PreparedStatement getPreStatement(Connection conn, String sql) {
        PreparedStatement preStmt = null;
        try {
            if (conn != null) {
                preStmt = conn.prepareStatement(sql);
            }
        } catch (SQLException e) {
            //System.out.println("获取预编译表达式语句时出现了异常。。。");
            e.printStackTrace();
        }        
        return preStmt;
    }
    
    // 获取预编译表达式语句(为下面获取自动生成的主键ID号做准备)
    public static PreparedStatement getPreStatement(Connection conn, String sql, boolean generatedKey) {
        PreparedStatement preStmt = null;
        try {
            if (conn != null) {
                // The constant indicating that generated keys should be made available for retrieval. 
                preStmt = conn.prepareStatement(sql, Statement.RETURN_GENERATED_KEYS);
            }
        } catch (SQLException e) {
           // System.out.println("获取预编译表达式语句时出现了异常。。。");
            e.printStackTrace();
        }        
        return preStmt;
    }
    
    // 查询
    public static ResultSet executeQuery(Connection conn, String sql) {
        Statement stmt = null;
        ResultSet rs = null;
        try {
            stmt = conn.createStatement();
            rs = stmt.executeQuery(sql);
        } catch (SQLException e) {
            e.printStackTrace();
        }
        return rs;
    }
    
    // 更新
    public static void executeUpdate(Connection conn, String sql) {
        Statement stmt = null;
        try {
            stmt = conn.createStatement();
            stmt.executeUpdate(sql);
        } catch (SQLException e) {
            e.printStackTrace();
        }
    }
    
    // 获取查询的结果集
    public static ResultSet getResultSet(Statement stmt, String sql) {
        ResultSet rs = null;
        try {
            if (stmt != null) {
                rs = stmt.executeQuery(sql);
            }
        } catch (SQLException e) {
           // System.out.println("获取查询的结果集时出现了异常。。。");
            e.printStackTrace();
        }
        return rs;
    }
    
    // 关闭连接
    public static void closeConnection(Connection conn) {
        try {
            if (conn != null) {
                conn.close();
                conn = null;
            }
        } catch (SQLException e) {
           // System.out.println("关闭连接时出现了异常。。。");
            e.printStackTrace();
        }        
    }
    
    // 关闭表达式语句
    public static void closeStatement(Statement stmt) {
        try {
            if (stmt != null) {
                stmt.close();
                stmt = null;
            }
        } catch (SQLException e) {
           // System.out.println("关闭表达式语句时出现了异常。。。");
            e.printStackTrace();
        }        
    }
    
    // 关闭结果集
    public static void closeResultSet(ResultSet rs) {
        try {
            if (rs != null) {
                rs.close();
                rs = null;
            }
        } catch (SQLException e) {
            //System.out.println("关闭结果集时出现了异常。。。");
            e.printStackTrace();
        }        
    }
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?