⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 database.java

📁 基于JSP的网上书店.功能较为全面 开发环境:sql server2000+tomcat+jdk
💻 JAVA
字号:
package bookshop.util;
/**
* <p>数据库连接专用包 </p>
* <p>Copyright: wxy Copyright (c) 2004</p>
* <p>Company:juanjuan book shop online </p>
* @by :wxy
* @version 1.0
*/
import java.sql.*;
import javax.sql.*;
import javax.naming.*;
public class DataBase 
{
    public Connection conn;
    public Statement stmt;
    public ResultSet rs=null;
    public InitialContext ctx=null;
    DataSource ds = null;
    public String sqlStr="";
    public String m_strErrMsg = "";
    
    
    public DataBase() 
    {
        this.connect();
    }
    
    public void finalize()
    {
        try
        {
            if (rs != null)
            {
                rs.close(); ;
            }
            if( stmt != null )
            {
                stmt.close();
            }
            if( conn != null)
            {
                conn.close();
            }
        }
        catch(Exception ex)
        {
            System.out.println("connect db error:"+ex.getMessage());
        }
    }
    
    public boolean connect()
    {
        
        boolean  bSuccess = true;
        boolean  bUseJdbc = true;
        //1) 使用MySQL数据库
        /*
        try{
        Class.forName("org.gjt.mm.mysql.Driver").newInstance();
        String url ="jdbc:mysql://localhost/BookStore?user=wxy&useUnicode=true&characterEncoding=8859_1";
        conn=DriverManager.getConnection(url);
        stmt = conn.createStatement ();
        bSuccess = true;
        }catch(Exception ee)
        {
        m_strErrMsg = "数据库错误:" + ee.getMessage();
        System.out.println("connect db error:"+ee.getMessage());
        return false;
        }
        */
        
        //2) 使用数据库连接池
        try
        {
            ctx = new InitialContext();
            if (ctx == null)
            {
                throw new Exception("没有匹配的上下文环境");
            }
            
            ds = (DataSource) ctx.lookup("java:comp/env/jdbc/SqlServermidp");
            if (ds == null)
            {
                throw new Exception("没有匹配的数据库");
            }
            conn = ds.getConnection();
            stmt=conn.createStatement();
            bSuccess = true;
        }
        catch(Exception ee)
        {
            m_strErrMsg = "使用连接池连接数据库时错误(请检查Server.xml配置):" + ee.getMessage();
            System.out.println("connect db error:"+ee.getMessage());
            bSuccess = false;
        }
        
        //3) 如果没有找到数据库连接池配置,则偿试采用下面的配置
        if( !bSuccess && bUseJdbc )
        {
            try
            {
                Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver").newInstance();
                String url = "jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=bookstore";
                String user = "sa";
                String password = "";
                conn = DriverManager.getConnection(url, user, password);
                stmt = conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,
                    ResultSet.CONCUR_UPDATABLE);
                bSuccess = true;
                m_strErrMsg = "";
            }
            catch (Exception ee)
            {
                m_strErrMsg = "使用JDBC驱动连接数据库错误:" + ee.getMessage();
                System.out.println("connect db error:" + ee.getMessage());
                bSuccess = false;
            }
        }
        
        return bSuccess;
    }
    
    public void close()
    {
        try
        {
            if(rs!=null)rs.close();
            if(stmt!=null)stmt.close();
            if(conn!=null)conn.close();
            
        }
        catch(Exception ee)
        {
            System.out.println("connect db error:"+ee.getMessage());
            return ;
        }
        
    }
    
    public static void main(String[] args) 
    {
        try
        {
            DataBase db = new DataBase();
            db.connect();
        }catch(Exception e)
        {
            e.printStackTrace();
        }
    }
}

⌨️ 快捷键说明

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