JDBC核心技术
一、JDBC概述
1.1数据的持久化
持久化(persistence):
把数据保存到可掉电式存储设备中以供之后使用
。大多数情况下,特别是企业级应用,数据持久化意味着将内存中的数据保存到硬盘上加以”固化”
,而持久化的实现过程大多通过各种关系数据库来完成
1.2Java中的数据存储技术
JDBC直接访问数据库,JDBC是java访问数据库的基石,JDO、Hibernate、MyBatis等只是更好的封装了JDBC。
1.3JDBC介绍
JDBC:java连接数据库技术统称
JDBC是有俩个部分组成:1,JAVA提供的JDBC规范2,各个数据库厂商的实现驱动jar包
JDBC技术是一种典型的面向接口编程
优点:我们只需要学习jdbc接口规定方法,即可操作所有数据库软件,项目中期需要切换数据库,我们只需要更新第三方驱动jar包,不需要更改代码
JAVA方向:提供了规范接口,规定数据库操作方法!
1.4编程编写步骤
涉及具体核心类和接口
DriverManager
1.将第三方数据库厂商的实现驱动jar注册到程序中
2.可以根据数据库连接信息获取connection
Connection
1.和数据库建立的连接,在连接对象上,可以多次执行数据库curd动作
2.可以获取statement和preparestatement,callablestatement对象
Statement|PreparedStatement|CallableStatement
1.具体发送SQL语句到数据库管理软件的对象
2.不同发送方式稍有不同!
Result
1.面向对象思维的产物 抽象成数据库的查询结果表
2.存储DQL查询数据库结果的对象
3.需要我们进行解析,获取具体的数据库数据
JDBC基本使用步骤
-
注册驱动
-
获取连接
-
创建发送sql语句对象
-
发送sql语句,并获取返回结果
-
结果集解析
-
资源关闭
模拟账号登录
package com.at.api.statement;
import com.mysql.cj.jdbc.Driver;
import java.sql.*;
import java.util.Scanner;
/**
* @Author:CYF
* @Data:2023/03/12/20:40
* @Description: 模拟用户登录
*/
public class StatementUserLoginPart {
public static void main(String[] args) throws SQLException, ClassNotFoundException {
//1.键盘输入账号密码
Scanner scanner = new Scanner(System.in);
System.out.println("请你输入账号:");
String root = scanner.next();
System.out.println("请你输入密码:");
String pass = scanner.next();
//2.注册驱动
Class.forName("com.mysql.cj.jdbc.Driver");
//3.获取连接
String url = "jdbc:mysql://127.0.0.1:3306/atguigu";
Connection connection = DriverManager.getConnection(url, "root", "123456");
//4.创建statement 创建小车
Statement statement = connection.createStatement();
String sql = "select * from t_user where account = '"+root+"' and password = '"+pass+"'";
ResultSet resultSet = statement.executeQuery(sql);
//5.解析结果集
if (resultSet.next()) {
System.out.println("账号:"+root +"密码:"+pass+"账号密码正确》》》登录成功!");
}else{
System.out.println("ERROR");
}
//6.释放资源
resultSet.close();
statement.close();
connection.close();
}
}