包层次结构
Spring 框架的 JDBC 抽象框架包含四个不同的包
-
core
:org.springframework.jdbc.core
包包含JdbcTemplate
类及其各种回调接口,以及各种相关类。名为org.springframework.jdbc.core.simple
的子包包含SimpleJdbcInsert
和SimpleJdbcCall
类。另一个名为org.springframework.jdbc.core.namedparam
的子包包含NamedParameterJdbcTemplate
类和相关的支持类。参见 使用 JDBC 核心类控制基本 JDBC 处理和错误处理、JDBC 批处理操作 和 使用SimpleJdbc
类简化 JDBC 操作。 -
datasource
:org.springframework.jdbc.datasource
包包含一个用于轻松访问DataSource
的实用程序类,以及各种简单的DataSource
实现,您可以使用它们在 Jakarta EE 容器之外测试和运行未修改的 JDBC 代码。名为org.springframework.jdbc.datasource.embedded
的子包提供支持,通过使用 Java 数据库引擎(如 HSQL、H2 和 Derby)创建嵌入式数据库。参见 控制数据库连接 和 嵌入式数据库支持。 -
object
:org.springframework.jdbc.object
包包含表示 RDBMS 查询、更新和存储过程的类,这些类是线程安全的、可重用的对象。参见 将 JDBC 操作建模为 Java 对象。这种风格导致了更面向对象的方案,尽管查询返回的对象自然地与数据库断开连接。这种更高层次的 JDBC 抽象依赖于org.springframework.jdbc.core
包中的较低层次的抽象。 -
support
:org.springframework.jdbc.support
包提供SQLException
翻译功能和一些实用程序类。在 JDBC 处理过程中抛出的异常将被翻译为org.springframework.dao
包中定义的异常。这意味着使用 Spring JDBC 抽象层的代码不需要实现 JDBC 或 RDBMS 特定的错误处理。所有翻译的异常都是未检查的,这使您可以选择捕获可以从中恢复的异常,同时让其他异常传播到调用者。参见 使用SQLExceptionTranslator
。