JDBC快速入门(什么是JDBC,JDBC原理,如何使用JDBC)

🍟什么是JDBC

JDBC就是使用Java语言操作关系型数据库的一套API
全称:(Java DataBase Connectivity)Java数据库连接

🍟JDBC的原理

Java程序 ()------------JDBC (标准&接口)--------------数据库(驱动&实现)

sun公司定义的一套操作所有关系型数据库的规则,即接口
各个数据库厂商去实现这套接口,提供数据库驱动jar包
我们可以使用这套接口(JDBC)编程,真正执行的代码是驱动 jar包中的实现类
如图:在这里插入图片描述

🍟 JDBC快速入门(编程六部)

🍟JDBC接口介绍

1,Driver 驱动接口
2,DriverManager 驱动管理器(注册驱动,获取数据库连接 )
3,Connection 数据库连接对象
4,Statement 执行对象
5,ResultSet 结果集对象

🌸1,加载及注册驱动


   //1.加载及注册驱动
            Class.forName("com.mysql.cj.jdbc.Driver");

:

🌸2,创建数据库连接


			//连接路径: 协议:IP:端口/数据库名
 			String url = "jdbc:mysql://127.0.0.1:3306/java001";
 			//账号
            String username = "root";
            //密码
            String password = "root";
            //创建连接对象
       Connection  connection = DriverManager.getConnection(url, username, password);
          System.out.println(connection);
            

:

🌸3,编写sql语句


			//编写sql
       	 String sql = "insert into t_employee(name, dept, dept_name, salary) " +
           "values('小小','客服部','唐某某',17000);";
           

:

🌸4,创建执行sql的对象


	//创建对象
Statement 	statement = connection.createStatement();
	

:

🌸5,执行sql,处理结果

🍧5.1查询操作

		ResultSet 	resultSet = statement.executeQuery(sql);
            //输出内容
         while (resultSet.next()) {
         String name = resultSet.getString("name");
         int salary = resultSet.getInt("salary");
        System.out.println("name:" + name + ",salary:" + salary );
            }
            
🍧5.2增加—删除—修改操作

		int row = statement.executeUpdate(sql);
            if (row == 1) {
                System.out.println("更新操作成功");
            }
            

:

🌸6,关闭资源


//后开先关
 statement.close();
 connection.close();
 

🍟整合代码


package com.jdbc;

import com.jdbc.restructure.JDBCUtil;

import java.sql.*;

/**
 * @author sweet
 * @date 2023/11/28 11:38
 */
public class JDBCTest {
    public static void main(String[] args) {
        Statement statement = null;
        Connection connection = null;
        ResultSet resultSet = null;
        try {
//            //1.加载及注册驱动
//            Class.forName("com.mysql.cj.com.jdbc.Driver");
//            //2.创建数据库连接
//            String url = "com.jdbc:mysql://127.0.0.1:3306/java001";
//            String userName = "root";
//            String password = "root";
           // connection = DriverManager.getConnection(url, userName, password);
            connection = JDBCUtil.getConnection();
            System.out.println(connection);
            //3.编写sql
            String sql = "select name, salary from t_employee;";
            //4.创建一个执行sql对象
            statement = connection.createStatement();
            System.out.println(statement);
            //5.执行sql,并且获取执行结果
            resultSet = statement.executeQuery(sql);
            System.out.println(resultSet);
            while (resultSet.next()) {
                String name = resultSet.getString("name");
                int salary = resultSet.getInt("salary");
                System.out.println("name:" + name + ",salary:" + salary );
            }
        } catch (SQLException e) {
            e.printStackTrace();
        } finally {
            //关闭资源
            JDBCUtil.close(connection,statement,resultSet);
        }
    }
}

🍟最后,还有一些关于JDBC的一些相关概念:

  1. JDBC(Java Database Connectivity)
  2. JDBC驱动程序(JDBC Driver)
  3. 数据源(DataSource)
  4. 连接池(Connection Pool)
  5. Statement对象(Statement Object)
  6. PreparedStatement对象(PreparedStatement Object)
  7. CallableStatement对象(CallableStatement Object)
  8. 结果集(ResultSet)
  9. 元数据(Metadata)
  10. 事务(Transaction)1. JDBC(Java Database Connectivity)
  11. JDBC驱动程序(JDBC Driver)
  12. 数据源(DataSource)
  13. 连接池(Connection Pool)
  14. Statement对象(Statement Object)
  15. PreparedStatement对象(PreparedStatement Object)
  16. CallableStatement对象(CallableStatement Object)
  17. 结果集(ResultSet)
  18. 元数据(Metadata)
  19. 事务(Transaction)
    :
    Ok,以上就是关于JDBC快速入门的全部内容啦,博主会持续更新,有问题欢迎在评论区指正诺!
  • 41
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值