简介
JDBC(Java DataBase Connectivity)是Java和所有数据库之间的一个桥梁,是Java语言操作关系型数据库的一套API,是一个规范而不是一个实现,能够执行SQL语句。它由一组用Java语言编写的类和接口组成。各种不同类型的数据库都有相应的实现,本文中的代码都是针对MySQL数据库实现的。
JDBC快速入门
API详解
DriverManager
- 注册驱动
- 获取连接
Connection
- 代码实现:
- rollback不能放在throw后边
Statement
executeUpdate代码实现如上图所示
resultset
- 光标默认指向数据行的上一行
- 使用
案例
需求:
代码:
Preparedstatement
SQL注入演示:
PreparedStatement演示:
- executeUpdate()和executeQuery()的区别:
相同点:二者都能够执行增加、删除、修改等操作。
不同点:
1、execute可以执行查询语句,然后通过getResult把结果取出来。executeUpdate不能执行查询语句。
2、execute返回Boolean类型,true表示执行的是查询语句,false表示执行的insert、delete、update等。executeUpdate的返回值是int,表示有多少条数据受到了影响。
- 已在pstmt对象的获取语句中输入sql,故在executeQuery中不可再进行输入
- pstmt.set方法有许多类型,根据字段类型进行选择
- 此时的SQL注入:
原理
- 配置日志是为了原理可视化,不影响预编译是否可以使用
数据库连接池
###Druid使用
- load一步,需要注意name的值:
得到路径,然后将jdbc后的内容输入name,才能正确找到druid配置文件