介绍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提供的持久化技术

相关推荐
行者全栈架构师17 分钟前
IDEA 中 Maven 项目的 15 个红色报错快速解决方法
java·后端
令人头秃的代码0_019 分钟前
mac(m5)平台编译openjdk
java
倔强的石头_1 天前
《Kingbase护城河》——数据库存储空间全景探测与精细化瘦身实战
数据库
唐青枫1 天前
Java JDBC 实战指南:从 Connection 到事务和连接池
java
一个做软件开发的牛马1 天前
MyBatis-Plus 从零实战:完整搭建可运行 Demo,BaseMapper 零 SQL、Wrapper 条件构造、分页插件与代码生成器详解
java·后端
用户3721574261351 天前
Java 处理 PDF 图片:提取 PDF 中的图片,并压缩 PDF 图片体积
java
用户3721574261351 天前
Java 打印 Word 文档:从基础打印到高级设置
java
冬奇Lab1 天前
每日一个开源项目(第134篇):Zvec - 阿里开源的嵌入式向量数据库,向量搜索界的 SQLite
数据库·人工智能·llm
用户3521802454752 天前
当 Prompt 学会"热更新":Spring Boot × Nacos3 AI 实战
java·spring boot·ai编程
东坡白菜2 天前
破局全栈:一个前端开发的Java入门实战记录(1)
java·全栈