JDBC简单基本概念

jdbc

1、JDBC概念和快速入门案例
2、JDBC各个类的详细介绍 
3、JDBC的工具类

补充:
关于JDBC操作的顺序:

  • D: DriverManager
  • C: Connection
  • S: Statement、PrepareStatment
  • R:ResultSet

    启动顺序: DCSR
    关闭顺序: RSC //先开启的后关闭,DriverManager不用关闭

JDBC概念和快速入门案例

1、JDBC的概念:
通过Java代码操作数据库(增,删,改,查)


2、快速入门操作步骤:
A.导入jar包
B.注册驱动
    Class.forName("com.mysql.jdbc.Driver");
C.获取驱动
    String url = "jdbc:mysql://127.0.0.1:3306/ee";  //ee是数据库的名称
    Connection conn = DriverManager.getConnection(url, "root", "123");
D.获取操作对象
    Statement stat = conn.createStatement();
E.操作SQL
     int num = stat.executeUpdate(sql);
F.释放资源
    stat.close();
    conn.close();

JDBC各个类的详细介绍

1、DriverManager 驱动管理者
A.注册驱动
    原始的注册驱动的代码 Class.forName("com.mysql.jdbc.Driver");
    Driver底层代码采用的是 DriverManager.registerDriver(new Driver());
B.获取连接
    String url = "jdbc:mysql://127.0.0.1:3306/ee";  //ee是数据库的名称
    Connection conn = DriverManager.getConnection(url, "root", "123");


2、Connection 连接数据库
A.获取执行数据库的对象
    a.直接获取执行数据库的对象      
        Statement stat = conn.createStatement();
    b.获取预置语句执行数据库对象 
        PrepareStatement ps = conn.prepareStatement(sql语句);
B.管理事务
    a.开启事务 
        conn.setAutoCommit(false); //false设置为手动提交事务.true设置为自动提交
    b.提交事务 
        conn.commit();
    c.回滚事务 
        conn.rollback();


3、Statement 操作数据库
A.更新操作(DML"对表记录的增删改"和DDL"对表和库的增删改") 
    int num = stat.executeUpdate("SQL语句");  //这里的SQL语句是增删改.返回的是影响几行
B.查询操作(DQL"对表记录的查询操作")
    ResultSet resu = stat.executeQuery("SQL查询语句"); //这里的SQL语句是查询语句 DQL 


4、ResultSet 查询表结果集

A.判断是否还存在下一条数据
    boolean b = resu.next();  //如果存在下一条数据,返回值为true 不存在则返回false
B.获取结果集当中的数据
    a.通过查询到的结果集,索引值获取(索引值从1开始)
        int data01 = resu.getInt(1);        //获取到的是查询结果集索引为1的int类型的数据
        String data02 = resu.getString(2);  //获取到的是查询结果集索引为2的String类型的数据
    b.通过查询到的结果集,列名称获取
        int data01 = resu.getInt("id");         //获取到的是查询结果集列名是id的int类型的数据
        String data02 = resu.getString("name"); //获取到的是查询结果集列名是name的String类型的数据


5、PrepareStatement 操作数据库
A.获取预置操作
    select * from user where username = ? and password = ?;
    PreparedStatement ps = Connection.prepareStatement(sql); //通过预置对象,获取连接的操作
B.设置参数
    ps.setString(1,"root"); //参数1:第几个问号,参数2:对应预置的值
    ps.setString(2,"123");//参数1:第几个问号,参数2:对应预置的值
C.执行SQL语句
    ps.executeQuery();

JDBC的工具类

1、抽取的两个部分
A.连接Connection的对象
    Connection conn = DriverManager.getConnection(url, username, password); //返回conn
B.释放资源
    a.增删改 (释放 Connection 和 Statement)
    b.查询 (释放 Connection 和 Statement 和 ResultSet)
2、准备数据
A.四个配置文件的数据(对应的就是静态成员变量)
    url=jdbc:mysql://127.0.0.1:3306/ee   
    username=root
    password=123
    driver=com.mysql.jdbc.Driver
B.静态代码块
    a.赋值静态成员变量(类的加载器"获取配置文件路径",Properties"通过配置文件路径,获取四个值")
    b.注册驱动  Class.forName(driver);
3、使用工具类
Connection conn = JDBCUtils.getConnection(); //获取连接对象
JDBCUtils.close(resu,stat,conn);
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值