第9章 JDBC编程
Java面向对象程序设计-T9(JDBC编程)
一、JDBC简介
JDBC(Java DataBase Connectivity):Java数据库连接,是连接Java和数据库的桥梁,是一种可以执行SQL语句的Java API(应用程序接口)。通过Java API可以连接到数据库,并使用SQL语句实现对数据的增
、删
、改
、查
。
为了使JDBC程序可以执行和跨平台,需要不同的数据库产商提供相应的驱动
程序。
二、使用JDBC实现MySQL数据库的增删改查
1、获取连接
-
Java连接MySQL数据库需要MySQL产商提供
驱动
支持,所以需要引入资源包(jar包)-
在Java中加载驱动的代码:
Class.forName("com.mysql.jdbc.Driver");
-
-
后期在进行增删改查操作操作的时候都需要连接数据库(获取连接),所以需要我们可以把获取连接的代码封装成一个方法,方便调用。连接数据库需要提供三部分的内容:数据库连接
地址
、数据库账号
、数据库密码
。本机地址的两种表现形式:
localhost
127.0.0.1
- 地址:
jdbc:mysql://localhost:3306/jw2104
- 账号:
root
- 密码:
根据情况决定
-
在Java中,获取数据库连接使用的类是
DriverManager
,使用的其中的getConnection()
可以实现数据库的连接,getConnection()的具体语法:DriverManager.getConnection(数据库地址,数据库用户名,数据库密码);
在jdbc操作中,如果设计到中文,需要
characterEncoding
属性,否则会出现中文乱码问题,具体设置方式为:在url结尾追加属性:
jdbc:mysql://localhost:3306/jw2104?characterEncoding=utf-8
在控制台输出的时候,会出现安全连接的警告:
如果需要关闭安全连接,可以继续在url结尾追加属性
useSSL
:jdbc:mysql://localhost:3306/jw2104?characterEncoding=utf-8&useSSL=false
【编写连接数据的代码】
(1)创建Java项目
(2)新建文件夹lib
,导入jar包,并加载jar包内容
(3)在com.ynnz.utils
包中编写数据库工具类DBUtils.java
package com.ynnz.utils;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
public class DBUtils {
// 加载驱动
static {
try {
Class.forName("com.mysql.jdbc.Driver");
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
}
// 获取连接
public static Connection getConn() {
try {
return DriverManager.getConnection("jdbc:mysql://localhost:3306/jw2104", "root", "123456");
} catch (SQLException e) {
e.printStackTrace();
}
return null;
}
// 测试数据库是否连接成功
public static void main(String[] args) {
System.out.println(getConn());
}
}
(4)测试数据库是否连接成功
【连接数据库常见错误】
-
没有创建数据库
-
驱动地址不正确
-
账号或密码不正确
2、使用JDBC实现新增操作
【准备工作】
-
新建数据库
jw2104
-
新建数据表
student
【JDBC使用步骤】
-
获取连接
直接调用工具类
DBUtils
中的getConn()
即可Connection conn = DBUtils.getConn();
-
编写SQL语句
在jdbc中,编写SQL语句时,不能直接写值,值需要使用占位符
?
表示 -
加载SQL语句
在jdbc中加载SQL语句需要使用
PreparedStatement
中的prepareSt