JDBC基本用处及其配置文件写法

本文介绍了JDBC在Java中用于操作数据库的基本用途,并详细阐述了配置文件MSQ.properties的编写,包括设置时区和中文编码。此外,还详细讲解了JDBC连接数据库的步骤,包括读取配置文件、注册驱动、建立连接、创建Statement对象、执行SQL语句以及处理结果集,最后强调了关闭连接的顺序。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

JDBC基本用处及其配置文件写法

概述

JDBC就是数据库连接方法,是JAVA用来操作数据库的一个API(用户接口),用户通过这个接口编写类从而实现应用程序对数据库的操作。

JDBC文件编写

前言&准备

JDBC通常是由一个配置文件(properties)和一个调用文件(xml/jsp/java)组成,这其实就是java语言里[通过数据库驱动]-[调用配置文件]进行连接-[操作数据库]的过程。
1.首先数据库已经默认装好了,然后创建文件
在这里插入图片描述
2.加载数据库驱动file→project structure
在这里插入图片描述
3.如果是maven项目里用JDBC访问数据库,要在pom.xml文件里添加依赖,然后重新读取配置文件

<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.21</version>
</dependency>

接下来就是编写jdbc了。

编写配置文件MSQ.properties

我用的是MySQL8并且数据库里有中文内容,所以要设置:
时区(serverTimezone)
中文编码(characterEncoding)

DRIVER=com.mysql.cj.jdbc.Driver
URL=jdbc:mysql://localhost:3306/work?useSSL=false&serverTimezone=UTC&useUnicode=true&characterEncoding=utf8
UNAME=root
passwd=123456

URL在数据库的属性(properties)里可以看到:
在这里插入图片描述
在这里插入图片描述

编写JDBC调用文件
jdbc有以下几个步骤:

一、读取配置文件,注册驱动(这选择第4种办法)
有五种办法:
1.ServletContext
2.ResourceBundle类
3.ClassLoader方式
4.getResouceAsStream
5.PropertiesLoaderUtils 工具类
二、连接数据库
有两种办法:(这选择第1种办法)
1.DriverManager
2.Driver接口
三、创建Statement对象
有两种办法:(这选择第1种办法)
1.PreparedStatement
2.Statement
四、执行sql语句
execute()方法,用于增删操作
executeQuery()方法,用于查询
executeUpdate()方法,用于修改数据
五、处理返回结果
ResultSet:用while (rs.next()){String target = rs.getString(“TARGET”);}的方式遍历结果集
六、关闭连接
关闭顺序:resultset-statement-connection

接下来上代码
import java.sql.*;
import java.io.InputStream;
import java.util.Properties;

public class JDBC {
    public static Connection getConnection() throws Exception{
        //加载配置文件,读取配置信息
        Properties FILE = new Properties();
        InputStream file = Thread.currentThread().getContextClassLoader().getResourceAsStream("MSQ.properties");
        FILE.load(file);
        String driver = FILE.getProperty("DRIVER");
        String url = FILE.getProperty("URL");
        String uname = FILE.getProperty("UNAME");
        String passwd = FILE.getProperty("PASSWD");
        //注册驱动
        try {
            Class.forName(driver);
        } catch (ClassNotFoundException e) {
            System.out.println("找不到驱动程序,加载驱动失败");
            e.printStackTrace();
        }
        //与数据库建立连接
        Connection con = null;
        try {
            con = DriverManager.getConnection(url,uname,passwd);
        } catch (SQLException e) {
            System.out.println("数据库连接失败");
            e.printStackTrace();
        }
        return con;
    }
    private static void select(Connection conn) throws SQLException {
        String sql="【你的sql查询语句】";
        try {
            PreparedStatement pst1 = conn.prepareStatement(sql1);   //创建statement对象,执行sql语句
            ResultSet rs = pst.executeQuery();                    //存放获取的结果集
            if (rs.next()) {                                      //处理返回结果
                System.out.println("列1__列2__列3");
                do {//由于上面if已经用了一次next(),指针下移,所以在这里用do while进行及时更新记录
                    String id = rs.getString("列1");
                    String name = rs.getString("列2");
                    String home = rs.getString("列3");
                    System.out.println(列1+"__"+列2+"__"+列3);
                } while (rs.next());
            } else {
                System.out.println("没有相关记录");
            }
            if (rs!=null) rs.close();          //关闭resultset、statement
            if (pst!=null) pst.close();
        } catch (SQLException e) {
            e.printStackTrace();
        }
    }


        public static void main(String[] args) throws Exception {
        Connection conn = JDBC.getConnection();
        select(conn);
        if (conn!=null) conn.close();                               //关闭数据库连接
    }
    }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值