介绍java spring 提供的默认数据库持久化技术 JdbcTemplate基本演示

之前 我们说过spring贴心的内嵌了三种数据源形式 其中默认为HikariCP

其实 spring 也提供了持久化数据库连接技术 这个技术其实大部分都接触过 那就是 JDBC 随着时代的发展 用他的人也越来越少了

那么 我们要演示 JdbcTemplate

导入 mybatis 或 mybatis-plus 的片段 就要注掉了

一山不容二虎

之前讲的 数据源方面的 你什么都不引入 是没问题 因为他是spring内嵌

但是 如果你什么都不导入 你的项目中是没有JDBC的

那么 就会有人说了 你这不坑人吗? 不是说spring提供的JDBC吗?

没错 但是我们要手动导入spring提供的starter即可

xml 复制代码
<dependency>
  <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-jdbc</artifactId>
</dependency>

它这东西我觉得做的是绝对合理的 因为你如果什么都不做 项目默认带个JDBC的包 那现在那么多人不用这个技术了 就很鸡肋了

这是一个操作数据库的模板对象 它里面的就是JDBC技术

配置文件 我们就恢复到最基础的样子就好了

首先就是 我们dao层写的 sql 本身是mybatis 或 mybatis-plus形式的

依赖没了 自然会报错 要注释掉 不然会报错

然后 我们在需要用它的地方 可以通过条件装配 弄成一个JdbcTemplate类对象

然后

如果你想执行修改语句 update

查询 query

queryForObject 查单条数据

queryForList 查多条

这里 我们搞个查询

参考代码如下

java 复制代码
package com.example.textm;

import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.jdbc.core.JdbcTemplate;

import java.util.List;
import java.util.Map;

@SpringBootTest
class TextMApplicationTests {

    @Test
    public void transferAmount(@Autowired JdbcTemplate JdbcTemplate) {
        List<Map<String,Object>> maps =  JdbcTemplate.queryForList("select * from staff");
        System.out.println(maps);
    }
}

这里 我们调用JdbcTemplate下的queryForList 查询多条 sql语句 select * from staff

然后 拿到的是一个 list Map

我们控制台输出一下看一下 运行代码

看着比较像前端控制台输出的 对象数组 哈哈哈

其实 目前 这种用法 返回一个MAP 是非常不好用的 一般如果你真的要用JDBC 不会这么去写

一般是query

好啦 再继续说就扯远了 要用的话 大家可以自己去看JdbcTemplate

这里只是告诉大家 spring提供的持久化技术

相关推荐
IT_Octopus2 小时前
IntelliJ 本地日志路径自定义:`-DLOG_PATH=./logs` 为什么总“不听话“
java·log4j·intellij-idea
长征coder3 小时前
【无标题】
java·性能优化
新时代牛马4 小时前
PCI与PCIe 硬件原理、配置空间/BAR 与 Linux 驱动完整篇:从 LTSSM、TLP 到 ECAM 与probe
java·linux·服务器
Bs_MoneyMagnet4 小时前
基于springboot+vue的医疗健康便民服务平台的设计与实现 源码+文档
java·vue.js·spring boot·后端·spring
troy1284 小时前
向量数据库选型指南:Milvus / Qdrant / Chroma / pgvector
数据库·milvus
sunshine22 girl5 小时前
Java学习一 环境配置2 Idea的入门使用和maven配置,项目启动脚本配置
java·maven
彧azz5 小时前
Redis 全面指南:从核心概念到高可用架构实战
数据库·redis·架构
有点。5 小时前
*C++哈夫曼树与哈夫曼编码
java·c++·servlet
DBA小马哥5 小时前
MongoDB 数据同步怎么做?oplog、Change Streams、同步工具 4 种方案一次讲清(附踩坑清单)
数据库·mongodb