Spring的数据库开发关于JDBC的配置
1.Spring JdbcTemplate 的解析
针对数据库的操作,Spring框架提供了JdbcTemplate类,该类是Spring框架数据抽象层的基础,其他更⾼层次的抽象类却是构建于JdbcTemplate类之上。可以说,JdbcTemplate类是SpringJDBC的核⼼类。
JdbcTemplate类的继承关系⼗分简单。它继承⾃抽象类JdbcAccessor,同时实现了JdbcOperations 接⼝,JdbcTemplate类的直接⽗类
是 JdbcAccessor,该类为⼦类提供了⼀些访问数据库时使⽤的公共属性,具体如下。
·DataSource:其主要功能是获取数据库连接,具体实现时还可以引⼊对数据库连接的缓冲池和分布式事务的⽀持,它可以作为访问数据库资源的标准接⼝。
·SQLExceptionTranslator:org.springframework.jdbc.support.SQLExceptionTranslator接⼝负责对 SQLException进⾏转译⼯作。通过必要的设置或者获取SQLExceptionTranslator中的⽅法,可以使JdbcTemplate在需要处理SQLException时,委托SQLExceptionTranslator的实现类来完成相关的转译⼯作。 JdbcOperations接⼝定义了在JdbcTemplate类中可以使⽤的操作集合,包括添加、修改、查询和删除等操作。
2.Spring JDBC的配置
Spring JDBC模块主要由4个包组成,分别是core(核⼼包)、dataSource(数据源包)、object(对象包)和support(⽀持包)。
Spring JDBC 中的主要包及说明jdbctemplate查询一条数据
包名 说明 core 包含了JDBC 的核⼼功能,包括JdbcTemplate类、SimpleJdbclnsert类、SimpleJdbcCallcore 类以
及 NamedParameterJdbcTemplate类 dataSource 访问数据源的实⽤⼯具类,它有多种数据源的实现,可以在Java EE容器外部测试JDBC 代码object 以⾯向对象的⽅式访问数据库,它允许执⾏查询并将返回结果作为业务对象,可以在数据表的列和业务对象的属性之间映射查询结果 support 包含了core和obj
ect包的⽀持类,例如,提供异常转换功能的SQLException类 可以看出,Spring对数据库的操作都封装在了这⼏个包中,⽽想要使⽤SpringJDBC,就需要对其进⾏配置。在Spring中,JDBC的配置是在配置⽂件l中完成的。 其配置模板: <?xml
version="1.0" encoding="UTF-8"?><beans
xmlns="/schema/beans"xmlns:xsi="/2001/XMLSchema-
instance"xsi:schemaLocation="/schema/beans/schema/beans/spring-beans-4.3.xsd"><!--1 配置数据源--><bean id="dataSource" class = "org.springframework.jdbc.datasource.DriverManagerDataSource"><!--数据库驱动--><property name="driverclassName" value="sql.jdbc.Driver"/><!--连接数据库的url--><property name="url"
value="jdbc:mysql://localhost:3306/spring"/><!--连接数据库的⽤户名--><property name="username" value="root"/><!--连接数据库的密码 --> <property name="password" value="root"/></bean><!--2配置JDBC模板--><bean id="jdbcTemplate"
class="org.JdbcTemplate"><!--默认必须使⽤数据源--><property name="dataSource" ref="dataSource"/></bean> <!--3配置注⼊类 --><bean id="xxx" class="Xxx"><pro
perty name="jdbcTemplate" ref="jdbcTemplate"/></bean><!-- ... ... ...--></beans> 在上述代码中,定义了3个Bean,分别是dataSource、jdbcTemplate和需要注⼊类的bean。其中 dataSource 对应
的 org.springframework.jdbc.datasource.DriverManagerDataSource类⽤于对数据源进⾏配置,jdbcTemplate对应
的 org.JdbcTemplate类中定义了JdbcTemplate的相关配置。上述代码中dataSource的配置就是JDBC连接数据库时所需的4个属性。 4个属性,需要根据数据库类型或者机器配置的不同设置相应的属性值。例如,如果数据库类型不同,需要更改驱动名称;如果数据库不在本地,则需要将地址中的 localhost替换成相应的主机IP;如果修改过MySQL数据库的⽴瑞⼝号(默认为3306),则需要加上修改后的端⼝号,如果未修改,则端⼝号可以省略;同时连接数据库的⽤户名和密码需要与数据库创建时设置的⽤户名和密码保持⼀致,本⽰例中Spring数据库的⽤户名和密码都是root。 dataSource的4个属性 属性名含义driverClassName 所使⽤的驱动名称,对应驱动JAR包中的Driver类url数据源所在地址username 访问数据库的⽤户名password访问数据库的密码 定义 JdbcTemplate 时,需要将 dataSource 注⼊到JdbcTemplate中,⽽其他需要使⽤JdbcTemplate的 Bean,也需要将JdbcTemplate 注⼊到该Bean中(通常注⼊到Dao类中,在Dao类中进⾏与数据库的相关操作)。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论