【JDBC基础】

一、JDBC基础

1.概念

JDBC:Java Database Connectivity,即数据库连接,实际上是可以执行SQL语句的java API,只是接口,没有提供实现类,实现类由各个数据库的厂商提供,这些实现类就是数据库驱动程序jar包
在这里插入图片描述

通过JDBC我们可以使用java代码来连接数据库,并对数据库进行一系列操作,那么如何使用JDBC连接数据库呢?首先需要了解JDBC的常用接口和类:

2.JDBC的常用接口和类简介

  • DriverManager:用于管理JDBC驱动的服务类。主要功能–获取数据库连接对象Connection
    常用方法:
    static Connection getConnection(String url)
    尝试建立与给定数据库URL的连接。
    static Connection getConnection(String url, String user, String password)
    尝试建立与给定数据库URL的连接。

  • Connection:代表数据库连接对象
    常用方法:
    Statement createStatement()
    创建一个 Statement对象,用于将SQL语句发送到数据库。
    PreparedStatement prepareStatement(String sql)
    创建一个 PreparedStatement对象,用于将参数化的SQL语句发送到数据库。
    Connection控制事务的方法:
    Savepoint setSavepoint(): 创建一个保存点
    Savepoint setSavepoint(String name): 以指定名字创建一个保存点
    void setTransactionIsolation(int level): 设置事务的隔离级别
    void rollback() :回滚事务
    void rollback(Savepoint savepoint): 将事务回滚到指定的保存点
    void setAutoCommit(boolean autoCommit): 关闭自动提交,打开事务
    void commit(): 提交事务

  • Statement:用于执行SQL语句的工具接口。该对象可用于执行DDL、DCL、DML、SQL语句
    常用方法:
    **ResultSet executeQuery(String sql): **该方法用于执行查询语句,并且只能用于查询
    **int executeUpdate(String sql): **在执行DML语句时,返回受影响的行数;在执行DDL语句时,返回0

  • PreparedStatement:预编译的Statement对象,是Statement的子接口
    常用方法:
    void setXXX(占位符的位置,值): 预编译中sql语句定义时,用?来占位,用此方法为?赋值。
    PreparedStatement同样有executeQuery()、executeUpdate()、execute()三个方法,只是不需要再接收sql语句,因为此对象已经预编译了SQL命令,只要为这些命令传入参数即可。

  • ResultSet::结果集对象
    常用方法:
    void close() 释放资源
    **Boolean next():**将ResultSet的记录指针定位到下一行,如果有下一行,则返回true

3.JDBC入门编程步骤

public class JdbcDemo {
    public static void main(String[] args) throws Exception {
        // 1. 加载MySQL数据库驱动驱动
        Class.forName("com.mysql.cj.jdbc.Driver");

        // 2. 获取数据库连接对象     DriverManager:用于管理JDBC驱动的服务类
        Connection conn = DriverManager.getConnection(
                "jdbc:mysql://127.0.0.1:3306/mystudy?useUnicode=true&characterEncoding=utf-8&useSSL=false",
                "user",
                "password");
        // 3. 通过Connection对象创建Statement对象    Statement:用于执行SQL语句的工具接口
        Statement statement = conn.createStatement();
        // 4. 定义sql语句
        String sql = "select * from emp ";
        // 5. 执行sql,接收返回结果
        ResultSet rs = statement.executeQuery(sql);
        // 6. 操作结果集,如果执行的SQL语句是查询语句,则执行结果将返回一个ResultSet对象,
        // 该对象保存了SQL语句的查询结果,程序可以通过操作该对象取出查询结果
        while (rs.next()) {
            System.out.println(rs.getString(1) + "\t"
                    + rs.getString(2) + "\t" + rs.getString(3));
        }
        // 7. 释放资源
        conn.close();
        statement.close();
    }
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值