Spring JDBC - 概述

在使用普通的旧 JDBC 处理数据库时,编写不必要的代码来处理异常、打开和关闭数据库连接等变得很麻烦。但是,Spring JDBC 框架会处理从打开连接、准备和执行 SQL 语句、处理异常、处理事务到最后关闭连接的所有低级细节。

您所要做的只是定义连接参数并指定要执行的 SQL 语句,并在从数据库中获取数据时为每次迭代执行所需的工作。

Spring JDBC 提供了几种方法和相应的不同类来与数据库交互。在本教程中,我们将采用经典且最流行的方法,即利用框架的 JDBC 模板类。 这是管理所有数据库通信和异常处理的中央框架类。


JDBC Template 模板类

JDBC Template 模板类执行 SQL 查询、更新语句和存储过程调用、对 ResultSet 执行迭代以及提取返回的参数值。它还捕获 JDBC 异常并将它们转换为 org.springframework.dao 包中定义的通用、信息更丰富的异常层次结构。

JDBC Template 类的实例在配置后是线程安全的。 因此,您可以配置 JDBC 模板的单个实例,然后将该共享引用安全地注入多个 DAO。

使用 JDBC 模板类时的一个常见做法是在 Spring 配置文件中配置一个 DataSource,然后将该共享 DataSource bean 依赖注入到 DAO 类中。 JDBC 模板是在数据源的设置器中创建的。


数据访问对象 (DAO)

DAO 代表 Data Access Object,通常用于数据库交互。DAO 的存在是为了提供一种向数据库读取和写入数据的方法,它们应该通过一个接口公开此功能,应用程序的其余部分将通过该接口访问它们。

Spring 中的数据访问对象 (DAO) 支持使得以一致的方式轻松使用 JDBC、Hibernate、JPA 或 JDO 等数据访问技术。