📄 dbconnect.java
字号:
package net.ijsp.news.database;/** * <p>Title: </p> * <p>Description: </p> * <p>Copyright: Copyright (c) 2003</p> * <p>Company: ijsp.net</p> * @author ccjsmile * @version 1.0 */import java.sql.*;import java.io.*;import java.util.*;import java.util.Date;import javax.servlet.*;import javax.servlet.http.*;public class DBConnect { /*** 定义基本变量*/ private Connection conn = null; private Statement stmt = null; private PreparedStatement prepstmt = null; private static DBConnectionManager dcm = null; private PrintWriter log; private static Object lock = new Object(); public DBConnect() { init(); try{ conn = dcm.getConnection(); stmt = conn.createStatement(); }catch(Exception e){ System.err.println(e); }}/*** 构造数据库的连接和访问类* 预编译SQL语句* @param sql SQL语句*/public DBConnect(String sql) throws Exception { init(); try{ conn = dcm.getConnection(); stmt = conn.createStatement(); }catch(Exception e){ System.err.println(e); } this.prepareStatement(sql);}/*** 关闭数据库*/public void close() throws Exception { if (stmt != null) { stmt.close(); stmt = null; } if (prepstmt != null) { prepstmt.close(); prepstmt = null; } if (conn!=null) { dcm.freeConnection(conn); }}/*** 立即关闭100个数据库连接*/public void destroyAll() throws Exception { dcm.destroy();}/*** 进行数据库连接的基本配置*/public void init() { if(dcm==null) { synchronized (lock) { if(dcm==null) { LoadProp lp = new LoadProp(); lp = lp.prop(); try{ // dcm = new DBConnectionManager("org.gjt.mm.mysql.Driver","jdbc:mysql://localhost/forum","root","",3,50,"C:\\conlog.txt",1,true,60,2); dcm = new DBConnectionManager(lp.getDriver(), lp.getUrl(), lp.getUser(), lp.getPassword(), lp.getMinconn(), lp.getMaxconn(), lp.getLogfile(), lp.getMaxconntime(), false, 2, lp.getDebug() ); }catch(IOException ie){ System.err.println(ie); } } } }} public DBConnect(int resultSetType, int resultSetConcurrency) throws Exception { init(); try{ conn = dcm.getConnection(); stmt = conn.createStatement(resultSetType, resultSetConcurrency); }catch(Exception e){ System.err.println(e); } } public DBConnect(String sql, int resultSetType, int resultSetConcurrency) throws Exception { init(); this.prepareStatement(sql, resultSetType, resultSetConcurrency); } /** * 返回连接 * @return Connection 连接 */ public Connection getConnection() { return conn; } /** * PreparedStatement * @return sql 预设SQL语句 */ public void prepareStatement(String sql) throws SQLException { prepstmt = conn.prepareStatement(sql); } public void prepareStatement(String sql, int resultSetType, int resultSetConcurrency) throws SQLException { prepstmt = conn.prepareStatement(sql, resultSetType, resultSetConcurrency); } /** * 设置对应值 * * @param index 参数索引 * @param value 对应值 */ public void setString(int index,String value) throws SQLException { prepstmt.setString(index, value); } public void setInt(int index,int value) throws SQLException { prepstmt.setInt(index,value); } public void setBoolean(int index,boolean value) throws SQLException { prepstmt.setBoolean(index,value); }// public void setDate(int index,Date value) throws SQLException {// prepstmt.setDate(index,value);// } public void setLong(int index,long value) throws SQLException { prepstmt.setLong(index,value); } public void setFloat(int index,float value) throws SQLException { prepstmt.setFloat(index,value); } public void setBytes(int index,byte[] value) throws SQLException{ prepstmt.setBytes(index,value); } public void clearParameters() throws SQLException { prepstmt.clearParameters(); prepstmt=null; } /** * 返回预设状态 */ public PreparedStatement getPreparedStatement() { return prepstmt; } /** * 返回状态 * @return Statement 状态 */ public Statement getStatement() { return stmt; } /** * 执行SQL语句返回字段集 * @param sql SQL语句 * @return ResultSet 字段集 */ public ResultSet executeQuery(String sql) throws SQLException { if (stmt != null) { return stmt.executeQuery(sql); } else return null; } public ResultSet executeQuery() throws SQLException { if (prepstmt != null) { return prepstmt.executeQuery(); } else return null; } /** * 执行SQL语句 * @param sql SQL语句 */ public void executeUpdate(String sql) throws SQLException { if (stmt != null) stmt.executeUpdate(sql); } public void executeUpdate() throws SQLException { if (prepstmt != null) prepstmt.executeUpdate(); }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -