认识 JDBC
JDBC (Java DataBase Connectivity) 是 Java 数据库连接技术的简称,用于连接常用数据库。
Sun 公司提供了JDBC API,供程序员调用接口和类,集成在java.sql和javax.sql包中。
Sun 公司还提供了DriverManager类用来管理各种不同的JDBC驱动。
不同数据库厂商提供各自的JDBC驱动,所以我们想要连接数据库除了要了解 JDBC API 还需要下载各数据库厂商的驱动 jar 包。
JDBC API
JDBC API主要用于与数据库建立连接、执行SQL语句、处理结果,其中核心类和接口如下:
DriverManager:依据数据库的不同,管理JDBC驱动
Connection:负责连接数据库并担任传送数据的任务
Statement:由 Connection 产生、负责执行SQL语句
ResultSet:负责保存 Statement 执行后所产生的查询结果
JDBC 编码模板
1、与数据库建立连接并获取连接
2、发送SQL语句,得到执行结果
3、处理返回结果
4、释放资源
使用 JDBC 连接到 MySQL 数据库
本例适合已经会使用 MySQL 数据库的同学,首先我们下载 JDBC 的驱动 jar 包。这个网址提供了 MySQL 各种语言连接数据库的驱动https://www.mysql.com/products/connector/,MySQL Connector / J 8.0与从MySQL 5.5开始的所有MySQL版本兼容。
8.0下载地址 https://dev.mysql.com/get/Downloads/Connector-J/mysql-connector-java-8.0.13.zip
下载完成后解压,后将jar添加依赖到项目中。
连接到MySQL数据库
url指定数据库的连接字符串,格式为:
这里的参数 useUnicode=true 使用Unicode字符,characterEncoding=utf8 设置编码防止中文乱码,serverTimezone=UTC 设置时区,useSSL=false 不使用SSL
jdbc4.0不需要加载驱动
PreparedStatement 增删改
PreparedStatement 继承了 Statement 接口,表示预编译的 SQL 语句对象,SQL 语句被预编译并存储在 PreparedStatement 对象中,可以使用此对象多次高效地执行该语句。(还避免了 SQL 注入的隐患)
先准备好数据库 books
表 book
脚本也准备好了
PreparedStatement添加数据
说明:
1、连接字符串要修改数据库名字为 books
2、插入数据库的数据不能拼接而是要用代替
3、代替的参数要通过传入
pstmt.setXxx()的位置从 1 开始!
4、增删改的SQL语句都使用这个方法,返回受影响行数
删除数据
修改数据
增、删、改操作的写法都一样,都调用 executeUpdate() 方法返回一个受影响行数,唯一不同的 SQL语句。
PreparedStatement 查询数据
查询数据需要用到 ResultSet 类保存返回的结果集,我们获取数据要操作 ResultSet 获取。
ResultSet 常用方法
关闭对象时注意关闭的顺序,后使用的先关闭:rs.close()->pstmt.close()->connection.close()
ResultSet 对象存在一个光标,光标所指行为当前行。想要获取列的数据需要先指向一行,所以要先指定 next() 方法用于指向一行,如果没有数据next()方法返回false,有数据返回true。
使用 getXxx() 方法获取列的数据时建议写列名,这样好识别
回复“java”查看java系列入门教程
关注公众号,更有料!
领取专属 10元无门槛券
私享最新 技术干货