JavaEE JDBC

首页 / ☕Java / 正文

⛅建立工程

🌈将 JDBC 导入到 project

PS:若要连接数据库则需要进行此步骤

导入

相对路径法

连接

如图:

🍉建包

🧊进行单元测试

建立文件

连接数据库

package cc.cnix.ShoppingSystem.run;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;

public class unitTest {

    public static void main(String[] args) {
        // TODO Auto-generated method stub
        
        //建立驱动
        //try catch 包围
        try {
            Class.forName("com.mysql.jdbc.Driver");
        } catch (ClassNotFoundException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        
        //连接数据库
        //Connection 选择 java.sql
        Connection con = null;    //连接器
        
        //建立连接
        //使用 getConnection 三个参数
        //try catch 包围
        //第一个参数:"jdbc:mysql:"
        try {
            con = DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306/db_school_shopping", "root", "******");
        } catch (SQLException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        
        if (con == null) {
            System.out.println("connection failed");
        }else {
            System.out.println("connection succeed");
        }
        
    }
}

Console

connection succeed

🍑建立数据库 JDBC 连接单元

配置文件

config.properties

# 不要有多余的空白字符
dbconfig
driver = com.mysql.jdbc.Driver
url = jdbc:mysql://localhost:3306/db_school_shopping
name = root
pass = ******

JdbcUnit.java

package cc.cnix.ShoppingSystem.jdbc;

import java.io.FileInputStream;
import java.io.InputStream;
import java.sql.Connection;
import java.sql.DriverManager;
import java.util.Properties;

public class JdbcUnit {
    
    //定义JDBC全局的四个变量
    //让数据库保持长连接的状态(静态:static)
    static String driver = "";
    static String url = "";
    static String name = "";
    static String password = "";
    
    //自动运行的代码
    static{
        
        try{
        
        //配置文件转字节流存放到变量 is 中
        //导入
        //try catch 包围先不管 写完后手动包围以减少 try catch 的个数。
        InputStream is = new FileInputStream("confit.properties");
        
        //将字节流转换为属性值
        //导入
        Properties p = new Properties();
        p.load(is);
        
        //赋值
        driver = p.getProperty("driver");
        url = p.getProperty("url");
        name = p.getProperty("name");
        password = p.getProperty("pass");
        
        }catch(Exception e){    //不知道异常选哪个,就用 Exception
            e.printStackTrace();//打印缓冲流,控制台红字
            
        }
        
    }
    
    
    /**
     * 打开数据库
     * @return 返回连接对象
     */
    
    //连接数据库
    public static Connection opendb(){
        Connection con = null;//单独拿出来,可以让return con 的 con 有效。
        
        try{
        Class.forName(driver);
//        Connection con = null;
        con = DriverManager.getConnection(url, name, password);
        
        }catch(Exception e){
            e.printStackTrace();
        }
        return con;
    }
    
}

try catch 写完后 手动包围以 减少 try catch 的个数。

🌸完结撒花

修改UnitTest.java

//注释掉其他内容

if (JdbcUnit.opendb() == null) {
    System.out.println("connection failed");
}else {
    System.out.println("connection succeed");
}

您阅读这篇文章共花了:
打赏
评论区
头像
文章目录