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

相关推荐
●VON4 小时前
鸿蒙Flutter实战:分类管理页BottomSheet CRUD
数据库·flutter·华为·harmonyos·鸿蒙
Cosolar4 小时前
Chroma向量库面试学习指南
数据库·人工智能·面试·职场和发展·数据库架构
方也_arkling5 小时前
【Java-Day08】static / final / 枚举
java·开发语言
橙淮5 小时前
Spring Bean作用域与生命周期全解析
java·spring
Chengbei115 小时前
一站式源码安全检测工具、云安全 / APP / 小程序源码敏感信息递归多层目录扫描AK、JWT、手机号、身份证等敏感信息
java·开发语言·安全·web安全·网络安全·系统安全·安全架构
llz_1125 小时前
web-第一次课后作业
java·开发语言·idea
企服AI产品测评局5 小时前
Agent适配信创环境实测:企业级自动化如何实现国产操作系统与数据库全兼容?
运维·数据库·人工智能·ai·chatgpt·自动化
秋95 小时前
Java项目运行5天左右自动宕机:系统性定位与解决方案
java·开发语言·python
小江的记录本5 小时前
【JVM虚拟机】垃圾回收GC:垃圾收集器:CMS:核心原理、回收流程、优缺点、废弃原因(附《思维导图》+《面试高频考点清单》)
java·jvm·后端·python·spring·面试·maven
cfm_29146 小时前
Redis数据安全性解析
数据库·redis·缓存