当前位置:   article > 正文

MySQL-JDBC_masql jdbc

masql jdbc

MySQL-JDBC

JDBC概念和快速入门案例

JDBC的概念

    通过Java代码操作数据库(增,删,改,查)
  • 1

快速入门操作步骤

    1.导入jar包
    2.注册驱动
        Class.forName("com.mysql.jdbc.Driver");
    3.获取驱动
        String url = "jdbc:mysql://127.0.0.1:3306/ee";  //ee是数据库的名称
        Connection conn = DriverManager.getConnection(url, "root", "root");
    4.获取操作对象
        Statement stat = conn.createStatement();
    5.操作SQL
         int num = stat.executeUpdate(sql);
    6.释放资源
        stat.close();
        conn.close();
        //先开启的后关闭
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14

JDBC各个类的详细介绍

DriverManager 驱动管理者

    1.注册驱动
        原始的注册驱动的代码 Class.forName("com.mysql.jdbc.Driver");
        Driver底层代码采用的是 DriverManager.registerDriver(new Driver());
    2.获取连接
        String url = "jdbc:mysql://127.0.0.1:3306/ee";  //ee是数据库的名称
        Connection conn = DriverManager.getConnection(url, "root", "root");
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

Connection 连接数据库

    1.获取执行数据库的对象
        a.直接获取执行数据库的对象      
            Statement stat = conn.createStatement();
        b.获取预置语句执行数据库对象 
            PrepareStatement ps = conn.prepareStatement(sql语句);
    2.管理事务
        a.开启事务 
            conn.setAutoCommit(false); //false设置为手动提交事务.true设置为自动提交
        b.提交事务 
            conn.commit();
        c.回滚事务 
            conn.rollback();
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12

Statement 操作数据库

    1.更新操作(DML"对表记录的增删改"和DDL"对表和库的增删改") 
        int num = stat.executeUpdate("SQL语句");  //这里的SQL语句是增删改.返回的是影响几行
    2.查询操作(DQL"对表记录的查询操作")
  • 1
  • 2
  • 3

ResultSet 查询表结果集

    1.判断是否还存在下一条数据
        boolean b = resu.next();  //如果存在下一条数据,返回值为true 不存在则返回false
    2.获取结果集当中的数据
        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类型的数据
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9

PrepareStatement 操作数据库

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

JDBC的工具类

抽取的两个部分

    1.连接Connection的对象
        Connection conn = DriverManager.getConnection(url, username, password); //返回conn
    2.释放资源
        a.增删改 (释放 Connection 和 Statement)
        b.查询 (释放 Connection 和 Statement 和 ResultSet)
  • 1
  • 2
  • 3
  • 4
  • 5

准备数据

    1.四个配置文件的数据(对应的就是静态成员变量)
        url=jdbc:mysql://127.0.0.1:3306/ee   
        username=root
        password=root
        driver=com.mysql.jdbc.Driver
    2.静态代码块
        a.赋值静态成员变量(类的加载器"获取配置文件路径",Properties"通过配置文件路径,获取四个值")
        b.注册驱动  Class.forName(driver);
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8

使用工具类

    Connection conn = JDBCUtils.getConnection(); //获取连接对象
    JDBCUtils.close(resu,stat,conn);
  • 1
  • 2
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/我家自动化/article/detail/659700
推荐阅读
相关标签
  

闽ICP备14008679号