jdbc连接数据库
总结内容
1. 基本概念
jdbc的概念
- sun公司提供操作数据库的一套接口(规范、标准)。
2. 数据库连接
数据库的连接
- 代码如下
// 贾琏欲执事(口诀)
// 定义一些需要使用的参数
String sql = "delete from Student where id = ? ";
String url = "jdbc:mysql://localhost:3306/db_test";
String username = "root";
String password = "admin";
// 加载数据库驱动(贾)
Class.forName("com.mysql.jdbc.Driver");
// 获取数据库连接(琏)
Connection conn = DriverManager.getConnection(url, username, password);
// 预编译sql语句(欲)
PreparedStatement ps = conn.prepareStatement(sql);
ps.setInt(1, id);
// 执行sql语句(执)
ps.executeUpdate();
// 释放资源(事)
statement.close();
conn.close();
- 数据库CRUD(增删改查)操作
1)在连接数据库之后我们需要根据需求对数据进行CRUD(增删改查)操作,一般我们会把CRUD操作放入DAO层中;
DAO层思想
-
DAO(Data Access Object)数据访问对象
1)一个面向对象的数据库接口。也就是与数据库打交道,夹在业务逻辑与数据库资源中间,将所有对数据源的访问操作封装在一个公共API中。程序书写就是建立一个接口,接口中定义了此应用程序中将会用到的所有事务方法; -
DAO中的主要操作
1)增删改查(CRUD);
重构设计
-
重构原因
1)由于我们每次进行CRUD操作时都要创建数据库连接,以及释放资源等操作,这样会有大量冗余的代码,所以我们需要对重复操作的代码进行抽取; -
代码如下:
public class JDBCUtil {
/**
* @description: 使用单例模式建立工具类
*/
private static JDBCUtil jdbc = new JDBCUtil();
private JDBCUtil() {
}
public static JDBCUtil getInstance() {
return jdbc;
}
static Properties p = null;
static{
// 加载 db.properties 配置文件
p = new Properties();
InputStream in = Thread.currentThread().getContextClassLoader().getResourceAsStream