[JDBC笔记]01.JDBC基础


JDBC基础

什么是JDBC

JDBC 规范定义接⼝,具体的实现由各⼤数据库⼚商来实现。

JDBC 是 Java 访问数据库的标准规范,真正怎么操作数据库还需要

具体的实现类,也就是数据库驱动。每个数据库⼚商根据⾃家数据

库的通信格式编写好⾃⼰数据库的驱动。所以我们只需要会调⽤

JDBC 接⼝中的⽅法即可, 数据库驱动由数据库⼚商提供。

JDBC连接

使⽤JDBC的好处:
  1. 程序员如果要开发访问数据库的程序,只需要会调⽤ JDBC 接⼝中的⽅
    法即可,不⽤关注类是如何实现的。
  2. 使⽤同⼀套 Java 代码,进⾏少量的修改就可以访问其他 JDBC ⽀持的数据库。
1.导入jar包-驱动包
mysql-connector-java-8.0.16.jar
2.加载驱动类
加载驱动类
Class.forName("com.mysql.jdbc.Driver")  mysql  5以前的版本
Class.forName("com.mysql.cj.jdbc.Driver")  mysql  5以后的版本
mysql:  com.mysql.jdbc.Driver
oracle: oracle.jdbc.driver.OracleDriver
3.获得数据库得到连接 创建通道
Connection conn= DriverManager.getConnection(url,username,password);
mysql的url:    jdbc:mysql://localhost:3306/bjpowernode?serverTimezone=UTC   
oracle的url:    jdbc:oracle://
4.可能获得的异常
原因:SQLException
1.No suitable driver url地址前缀错误
2.Unknow database xxx database数据库名称错误
3.Access denied for user 账号和密码发生错误
5.创建执行SQL语句的Statement对象 交通工具
Statement st=conn.createStatement();
6.执行sql语句的预编译处理对象 PreparedStatement
PreparedStatement ps=conn.preparedStatement(sql)
sql可以是完整的也可以带占位符"?"的
如果sql语句带有占位符"?",需要通过setString等方法进行注入
7.执行SQL语句 获得结果
boolean a=st.execute(sql);DDL,DML,DQL,大部分情况下DDL使用,因为其他有自己的执行语句
int a=st.executeUpdate(sql);DML使用,返回一个int值,表达影响的行数
ResultSet a=st.executeQuery(sql);返回一个ResultSet
8.处理 ResulSet结果
封装对象:过程繁琐
next():
getXX(index/columnName):
9.关闭Statement对象,关闭connection通道
st.close();
conn.close();

User.JDBCUtil 工具类的封装

由于JDBC连接的繁琐,所以我们将他们封装成工具类,减少代码的编写量

1.读取properties配置文件

在静态代码块中,预先加载properties配置文件,获得URL,账号密码等数据
在读取数据后直接加载驱动类

2.封装getConnection方法

调用getConnection()方法,传入读取的url,username,password等参数

Connection conn= DriverManager.getConnection(url,username,password);
3.封装createStatement预编译处理方法

直接调用JDBCUtil 工具类中的getConnection方法
创建预编译对象

ps=getConnection().prepareStatement(sql);
4.封装close方法
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值