测试是否连接数据库,并打印日志

1.新建module

2.构建如下目录,项目目录下新建libs文件夹,将mysql驱动jar包拷贝到里面,然后,右键add as library

3.JDBCUtils.java

import java.sql.*;

public class JDBCUtils {
    public static Connection getConnection() {
        String driver = "com.mysql.jdbc.Driver";  // 获取mysql数据库的驱动类
        String url = "jdbc:mysql://localhost:3306/myworks"; // 连接数据库,myworks为数据库
        String name = "root"; //连接mysql的用户名
        String pwd = "root"; //连接mysql的密码
        try {
            Class.forName(driver);
            Connection conn = DriverManager.getConnection(url, name, pwd);
            return conn;
        } catch (ClassNotFoundException e) {
            e.printStackTrace();
            return null;
        } catch (SQLException e) {
            e.printStackTrace();
            return null;
        }
    }

    public static void closeAll(Connection conn, PreparedStatement ps, ResultSet rs) {
        try {
            if (rs != null) {
                rs.close();
            }
        } catch (SQLException e) {
            e.printStackTrace();
        }
        try {
            if (ps != null) {
                ps.close();
            }
        } catch (SQLException e) {
            e.printStackTrace();
        }
        try {
            if (conn != null) {
                conn.close();
            }
        } catch (SQLException e) {
            e.printStackTrace();
        }
    }

    public static void main(String[] args) throws SQLException {
        Connection cc = JDBCUtils.getConnection();
        // 判断是否连接数据库成功
        if (!cc.isClosed()) {
            System.out.println("Succeeded connecting to the Database!");
        }
        Statement statement = cc.createStatement();
        // 执行查询语句
        String sql = "select * from t_user";
        ResultSet rs = statement.executeQuery(sql);
        while (rs.next()) {
            System.out.println(rs.getString("name") + "");
        }
    }


}

将配置文件提取成properties文件

jdbc.properties,注意不能加空格

#获取mysql数据库的驱动类
Driver=com.mysql.jdbc.Driver
#连接数据库,myworks为数据库
url=jdbc:mysql://localhost:3306/myworks
#连接mysql的用户名
user=root
#连接mysql的密码
password=root 

DataConnection.java

import java.io.*;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.util.Properties;

public class DataConnection {
    private Properties p;
    private Connection conn;
    private FileInputStream f;

    public static void main(String[] args) {
        new DataConnection().loadDriver();
    }
    public void loadDriver(){
        p = new Properties();
        try{
            f = new FileInputStream(new File("D:\\jdbc.properties"));
            p.load(f);
            System.out.println("数据库正在连接,请等待...");
            Class.forName(p.getProperty("Driver").trim());
            System.out.println("驱动加载成功!!!");
            try{
                conn = DriverManager.getConnection(p.getProperty("url").trim(),p.getProperty("user").trim(),p.getProperty("password").trim());

                System.out.println("数据库连接成功!!!");
            }catch(SQLException e){
                System.out.println("不能连接到指定的数据库,请检查相应的基本信息!!!");
                e.printStackTrace();
            }
        }catch(FileNotFoundException e){
            System.out.println("指定路径的文件不存在或者无权限访问!!!");
            e.printStackTrace();
        }catch(IOException e){
            e.printStackTrace();
        }catch (ClassNotFoundException e){
            System.out.println("无法找到所加载的驱动,或驱动文件不存在!!!");
            e.printStackTrace();
        }finally {
            try{
                f.close();
                conn.close();
            }catch (IOException e){
                e.printStackTrace();
            }catch(SQLException e){
                e.printStackTrace();
            }
        }
    }


}

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章