Spring的数据库开发

csuzxm000 2020-01-08

Spring JDBC

Spring的JDBC模块负责数据库资源管理和错误处理,大大简化了开发人员对数据库的操作,

使得开发人员可以从烦琐的数据库操作中解脱出来,从而将更多的精力投入到编写业务逻辑中。

接下来的两个小节,将针对Spring中的JDBC模块内容进行详细的讲解。

Spring JDBCTemplate的解析

针对数据库的操作,Spring框架提供了JdbcTemplate类,该类是Spring框架数据抽象层的基础,其他更高层次的抽象类却是构建于JdbcTemplate类之上。可以说,JdbcTemplate类是Spring JDBC的核心类。

Spring JDBC的配置

Spring JDBC模块主要由4个包组成,分别是core(核心包)、dataSource(数据源包)、object(对象包)和support(支持包),

关于这4个包的具体说明如表

Spring的数据库开发

Spring对数据库的操作都封装在了这几个包中,而想要使用Spring JDBC,就需要对其进行配置。

在Spring中,JDBC的配置是在配置文件applicationContext.xml中完成

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:p="http://www.springframework.org/schema/p"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">
<!-- 1配置数据源 -->
<bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
     <!-- 数据库驱动 -->
     <property name="driverClassName" value="com.mysql.jdbc.Driver"></property>
    <!-- 连接数据库 -->
    <property name="url" value="jdbc:mysql://localhost:3306/test"></property>
    <!-- 连接数据库的用户名 -->
    <property name="username" value="root"></property>
    <!-- 连接数据库的密码 -->
    <property name="password" value="root"></property>
</bean>
<!-- 2.配置JDBC模板 -->
<bean id="jdbcTemplate" class="org.springframework.jdbc.core.JdbcTemplate">
   <!-- 默认必须使用数据源 -->
   <property name="dataSource" ref="dataSource"></property>
</bean>

<!-- 定义id为accountDao的Bean -->
<bean id="accountDao" class="com.spring.jdbc.AccountDaoImp">
    <!-- 将jdbcTemplate注入到accountDao实例中 -->
    <property name="jdbcTemplate" ref="jdbcTemplate"></property><!--本部分三步骤是固定格式,第三步是注入类-->
</bean>
</beans>

dataSource的4个属性

Spring的数据库开发

需要根据数据库类型或者机器配置的不同设置相应的属性值。例如,如果数据库类型不同,需要更改驱动名称;

如果数据库不在本地,则需要将地址中的localhost替换成相应的主机IP;

如果修改过MySQL数据库的端口号(默认为3306),则需要加上修改后的端口号,如果未修改,则端口号可以省略

4.2Spring JdbcTemplate的常用方法

4.2.1execute():execute(String sql)方法能够完成执行SQL语句的功能

下面以创建数据表的SQL语句为例

applicationContext.xml

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:p="http://www.springframework.org/schema/p"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">

<!-- 1配置数据源 -->
<bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
     <!-- 数据库驱动 -->
     <property name="driverClassName" value="com.mysql.jdbc.Driver"></property>
    <!-- 连接数据库 -->
    <property name="url" value="jdbc:mysql://localhost:3306/test"></property>
    <!-- 连接数据库的用户名 -->
    <property name="username" value="root"></property>
    <!-- 连接数据库的密码 -->
    <property name="password" value="root"></property>
</bean>
<!-- 2.配置JDBC模板 -->
<bean id="jdbcTemplate" class="org.springframework.jdbc.core.JdbcTemplate">
   <!-- 默认必须使用数据源 -->
   <property name="dataSource" ref="dataSource"></property>
</bean></beans>

相关推荐

itjavashuai / 0评论 2020-07-27