初学jdbc的一点小感悟

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档


前言

在软件开发中,我们会经常使用到数据库存储和管理数据,为了在java中提供对数据库访问的支持,jdbc(java database commectivity)这样一套标准接口应运而生


一、jdbc是什么?

全称:java database commectivity,是一套用于执行sql语句的Java api。可以理解为一套链接Java代码和数据库驱动的一套标准接口。

二、使用步骤

简单的jdbc步骤
1.创建工程,导入驱动jar包
在这里插入图片描述

2.注册驱动
在这里插入图片描述有一个小小的槽点就是6.0.2版本之前就要把中间的.cj删除(6.0.2之后则没有这类要求)

3.获取链接
4.定义sql语句
5.获取执行sql对象
6.执行sql
7.处理返回结果
8.释放资源
具体实现代码如下(示例):

package com.itheima.jdba;

import java.sql.*;

public class JDBCDemo {
    public static void main(String[] args) {

        Connection conn;//使用Connection接口 声明一个变量 用来存储数据库对象
        conn=null;

        try {
            //1.注册驱动程序 通过Class类中的forName方法注册MySQL数据库驱动
            Class.forName("com.mysql.cj.jdbc.Driver");//这里所使用的是MySQL8.0以上的驱动
            /*
             * 注意这里的注册驱动程序的写法 驱动程序不同的版本写法不同  (注意是取决于驱动程序而不是取决于数据版本)
             * MySQL 8.0 以上版本驱动包版本 com.mysql.cj.jdbc.Driver
             * MySQL 8.0 以下版本驱动包版本 com.mysql.jdbc.Driver
             */

            //2.通过DriverManager和数据进行连接
            String DB_URL = "jdbc:mysql://localhost:3306/book"+"?serverTimezone=Asia/Shanghai&useSSL=false&allowPublicKeyRetrieval=true"; //连接数据库的链接

            /*
             * 数据库链接相关配置
             * URL=jdbc:mysql://[host][:port]/[database]
             * [host]:主机地址 本地的数据库为localhost
             * [:port]端口 MySQL数据库默认端口为3306
             * [database]:数据库名称 要连接哪个数据库就写那哪个数据库的名称
             * ?:分隔符
             * 各种参数(参数之间使用&进行分隔)
             * serverTimezone=Asia/Shanghai:设置连接数据库时使用亚洲时区
             * useSSL=false:设置连接时不启用SSL协议
             */

            //数据库的用户名和密码 根据自己的进行配置
            String USER = "root";//数据库用户名
            String PASS = "xzh123xzh123";//数据库密码

            //进行连接
            System.out.println("连接数据库中....");
            conn = DriverManager.getConnection(DB_URL, USER, PASS);//建立连接
            System.out.println("数据连接成功!");
            //使用DriverManager类中的getConnection方法和数据库建立连接 参数是分别是 数据库连接 数据库用户名 数据库密码
            //并将所返回的连接对象 复制给conn
            //数据查询
            Statement  stmt;
            stmt=conn.createStatement();//conn通过调用createStatement()方法创建一个Statement对象 可以用来发送SQL语句
            String sql="select * from 分类";//将要执行的语句存储到字符串变量中 方便查询
            ResultSet rs;
            rs= stmt.executeQuery(sql);//stmt调用其executeQuery方法 执行给定的sql参数 rs保存查询结果
            while (rs.next())//一直执行直到没有数据
            {
                //注意确定对应属性列的数据类型 使用对应的方法获取对应的数据类型
                String dept=rs.getString("信工系");
                String dept2=rs.getString("艺术系");
                String dept3=rs.getString("外语系");
                System.out.println("系别:"+dept+   "系别:"+dept2+  "系别:"+dept3);
            }


        } catch (SQLException e) {//处理SQL异常 SQL语法错误
            {
                System.out.println("SQL异常:" + e);
            }
        } catch (Exception e)//处理 Class.forName 错误
        {
            System.out.println("注册驱动失败" + e);
        } finally {
            try {//判断一下是否连接成功
                if (conn != null) conn.close();//如果成功了立即释放Connection对象的数据库和JDBC资源
            } catch (SQLException se) {//返回值为空则说明 没连上 则捕捉这个错误 并输出
                se.printStackTrace();//打印异常信息在程序中出错的位置及原因
            }
        }




    }
}


总结

提示:这里对文章进行总结:
例如:以上就是今天要讲的内容,本文仅仅简单介绍了pandas的使用,而pandas提供了大量能使我们快速便捷地处理数据的函数和方法。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值