Spring中的JDBC模块

本文详细介绍了Spring JDBC模块,包括其在Spring框架中的角色、JdbcTemplate的使用步骤,如管理数据源、创建JdbcTemplate对象,以及如何执行SQL的增删改查操作。同时,文章通过实例展示了execute方法、update方法和queryForXXX系列方法的用法,并给出了测试代码及结果。
摘要由CSDN通过智能技术生成

什么是Spring JDBC

Spring是一个一站式框架,提供了对JDBC的管理封装
Spring自身也提供了控制层的SpringMVC 和持久层的Spring JdbcTemplate。
提供用于执行sql的方法
JDBC模块对事务进行管理

在这时,大多都采用MyBatis对数据库进行操作。

Mybatis框架概述和搭建详解

Spring JDBC的开发步骤

下载 Spring JdbcTemplate 的jar包

        <!-- spring-jdbc -->
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-jdbc</artifactId>
            <version>5.2.2.RELEASE</version>
        </dependency>

Spring数据链接不直接参与数据库的连接,所以就要使用第三方的组件来连接数据库。(DBCP、c3p0、阿里druid(德鲁伊))称为数据库连接组件
与数据库做连接,我们再加一个阿里的数据源,它还带有数据库连接池的计数。还有着sql监控作用

阿里druid数据库连接包含有三大功能:

  1. 基本的数据库连接 封装了jdbc。
  2. 数据库连接池 (频繁的连接数据库、创建销毁连接对象开销较大。所以就出现了创建一个连接对象的池子,与数据库交互时,可以先从连接池中获取连接对象,用完后不进行销毁,只是还回到连接池中,这样就减少了创建销毁时的开销。就是提前创建好连接对象,有数据请求时直接用就行了)
        <!-- 阿里数据源 -->
        <dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>druid</artifactId>
            <version>1.1.10</version>
        </dependency>

顺便加上一个mysql的驱动包,做到与mysql数据库的连接

        <!-- mysql-connector-java -->
        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <version>8.0.16</version>
        </dependency>

导入属性文件

因为我将数据库密码账户等信息提取到一个 .properties属性文件中去了。

我也将对数据库的连接的配置文件也与总的Spring分离出来了。
在这里插入图片描述
在总的Spring配置文件中导入对数据库的配置文件的内容。

    <import resource="db.xml"></import>
    <!--导入db.xml的配置文件-->

在这里插入图片描述

config.properties文件里的内容

driverClassName=com.mysql.cj.jdbc.Driver
url=jdbc:mysql://127.0.0.1:3306/demo?characterEncoding=utf8&useSSL=false&serverTimezone=Asia/Shanghai
ume=root
pwd=wasd
initialSize=5
maxActive=15

然后在数据库连接的配置文件中导入属性文件

<context:property-placeholder location="config.properties"></context:property-placeholder>

Spring读取到自己建的文件属性

管理数据源对象

spring 管理与数据库链接 (数据源)

 <!--配置Druid的数据库连接对象-->
    <bean id="druidDataSource" class="com.alibaba.druid.pool.DruidDataSource">
        <property name="driverClassName" value="${driverClassName}"></property>
        <property name="url" value="${url}"></property>
        <property name="username" value="${ume}"></property>
        <property name="password" value="${pwd}"></property>
        <property name="initialSize" value="${initialSize}"></property>
        <!--initialSize初始化几个-->
        <property name="maxActive" value="${maxActive}"></property>
        <!--maxActive最大创建几个连接池-->
    </bean>

在配置文件中创建JdbcTemplate对象

    <!--Spring提供的JdbcTemplate封装类-->
    <bean id="jdbcTemplate" class="org.springframework.jdbc.core.JdbcTemplate">
        <property name="dataSource" ref="druidDataSource"></property>
        <!--将德鲁伊Druid注入到Spring提供的JdbcTemplate中去-->
    </bean>

JdbcTemplate 中常用的方法

execute:无返回值,可执行 ddl,增删改语句 ;

update:执行新增、修改、删除语句;

queryForXXX:执行查询相关语句;

测试

在所需要的类中获得JdbcTemplate这个在bean中通过bean创建的对象

    @Autowired//注入JdbcTemplate作为对数据库的连接
    JdbcTemplate jdbcTemplate;

UserDao文件是向数据库发送数据库信息的

update执行数的增、删、改

  1. 添加信息
package com.demo.spring.dao;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.stereotype.Repository;

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值