JDBC简单入土

前言

老师组织的暑期集训营好难好难,上课的时候老师上来就从spring框架开始,听得我一脸懵逼。学不下去,只能从基础开始补。以下内容就是在上课听不下去整理的。

嘛是JDBC?

全称为Java Database Connectivity。就是用java语言来连接数据库。
为了用同一套java代码控制所有关系型数据库,sun公司定义了名为jdbc的一系列规则(接口)。
各个数据库厂商实现这套接口,提供数据库驱动jar包。我们可以使用这些代码,实现代码的确是jar包中的实现类。

执行步骤

  1. 导入驱动jar包,mysql-connector-java-xxx-bin.jar
  2. 连接数据库
  3. 定义sql语句
  4. 获取连接对象
  5. 获取执行sql的对象 Statement
  6. 执行sql
  7. 处理结果
  8. 释放资源

这么说根本听不懂对吧,先康一段代码

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.Statement;

public class jdbc {
    public static void main(String[] args) throws Exception {
        //直接抛出异常
        //1.加载驱动类
        Class.forName("com.mysql.cj.jdbc.Driver");
        //2.连接数据库
        Connection connection = DriverManager.getConnection("jdbc:mysql://localhost:3306/hd?serverTimezone=UTC",
                "root",
                "123456");
        //3.定义sql语句

        String sql = "insert into users values(1,1,1,1,NOW())";
        //4.获取连接对象
        Statement stmt = connection.createStatement();
        //5.执行sql语句
        int count = stmt.executeUpdate(sql);
        //6.处理结果
        System.out.println(count);
        //7.释放资源
        stmt.close();
        connection.close();
    }
}

各个对象:

  • DriverManager:驱动管理对象。
    功能:
    1. 注册驱动,告诉系统使用哪个数据库的jar包
    代码使用:

     		Class.forName("com.mysql.cj.jdbc.Driver");	//你数据库对应版本的驱动
    
    1. 获取数据库的连接:

       方法:
       static Connection getConnection(String url , String user , String password );
      

      参数:
      * url:指定的连接路径
      语法:jdbc:mysql://ip地址(域名):端口号(mysql默认为3306)/数据库名称?时区
      * 例:jdbc:mysql://localhost:3306/hd
      * 如果连接的是本机mysql服务器,并且mysql服务默认端口是3306,则url可以简写为:jdbc:mysql:///数据库名称
      * user:用户名
      * password:密码

  • Connection:数据库连接对象
    * 功能:
    1. 获取执行sql的对象:
    * Statement createStatement();
    * PreparedStatement preparedStatement();
    2. 管理事务
    * 开启事务:void setAutoCommit(boolean autoCommit) 调用该方法参数为false,为开启事务
    * 提交事务:commit();
    * 回滚事务:rollback();

  • Statement:执行sql对象

    1. 执行sql
      1. boolean execute(String sql):可以执行任意sql语句,但是不常用
      2. int executeUpdate(String sql):执行DML语句(insert,delete,update)、DDL(create,alter,drop)语句。
        • 返回值为收到影响的行数。用于分析受到影响的行数来判断程序是否运行成功。
      3. ResultSet executeQuery(String sql):执行DQL语句(Select),返回结果集对象
  • Result:结果集对象

  • PreparedStatement:执行sql对象

小结:

jdbc的内容大概就是上面的那些了,剩下的就是阿里的druid数据库连接池和jdbcTemplate的内容了,这里不多说了,剩下的大伙自行百度查看。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值