SpringBoot-数据访问之JDBC

导入JDBC

  • 数据库驱动需要自行导入
XML 复制代码
<dependency>
	<groupId>org.springframework.boot</groupId>
	<artifactId>spring-boot-starter-data-jdbc</artifactId>
</dependency>

<dependency>
	<groupId>mysql</groupId>
	<artifactId>mysql-connector-java</artifactId>
</dependency>

数据源配置

  • 新版本的驱动类为:com.mysql.cj.jdbc.Driver

  • 数据库中,时区报错的可以在设置MySQL时区为东八区: set global time_zone='+8:00'

  • 然后查看时间是否与系统时间一致: select now();

    spring:
    datasource:
    url: jdbc:mysql://localhost:3306/db_account
    username: root
    password: 123456
    driver-class-name: com.mysql.jdbc.Driver

测试数据库连接

java 复制代码
@Slf4j
@SpringBootTest
class Boot05WebAdminApplicationTests {

    @Autowired
    JdbcTemplate jdbcTemplate;

    @Test
    void contextLoads() {

        Long aLong = jdbcTemplate.queryForObject(
					"select count(*) from account_tbl", 
					Long.class);
        log.info("记录总数:{}",aLong);
    }
}

JDBC自动配置原理

  1. DataSourceAutoConfiguration : 数据源的自动配置
  • 修改数据源相关的配置:spring.datasource
  • 数据库连接池的配置,是自己容器中没有DataSource才自动配置的
  • 底层配置好的连接池是:HikariDataSource
  1. DataSourceTransactionManagerAutoConfiguration: 事务管理器的自动配置

  2. JdbcTemplateAutoConfiguration: JdbcTemplate的自动配置,可以来对数据库进行crud

  • 配置文件 prefix = "spring.jdbc" 来修改JdbcTemplate配置
  • @Bean @Primary JdbcTemplate;容器中自动注入JdbcTemplate组件
  1. JndiDataSourceAutoConfiguration: jndi的自动配置

  2. XADataSourceAutoConfiguration: 分布式事务相关的配置,基于XA⼆阶提交协议的分布式事务数据源

相关推荐
草莓熊Lotso7 分钟前
C++ 二叉搜索树(BST)完全指南:从概念原理、核心操作到底层实现
java·运维·开发语言·c++·人工智能·经验分享·c++进阶
oliveira-time16 分钟前
单例模式中的饿汉式
java·开发语言
凌波粒19 分钟前
SpringMVC基础教程(1)--MVC/DispathcerServlet
java·spring·mvc
武子康19 分钟前
Java-173 Neo4j + Spring Boot 实战:从 Driver 到 Repository 的整合与踩坑
java·数据库·spring boot·后端·spring·nosql·neo4j
凌波粒21 分钟前
SpringMVC基础教程(2)--Controller/RestFul风格/JSON/数据转发和重定向
java·后端·spring·json·restful
老鼠只爱大米1 小时前
Java 设计模式之适配器模式:系统集成的万能接口
java·设计模式·适配器模式·adapter·java设计模式
一叶飘零_sweeeet1 小时前
Java+EasyExcel 打造学习平台视频学习时长统计系统
java·报表·easyexcel
Go away, devil1 小时前
Java-----集合
java·开发语言
李慕婉学姐1 小时前
Springboot智慧旅游管理系统6w63eon8(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。
数据库·spring boot·旅游
JIngJaneIL1 小时前
旅游|内蒙古景点旅游|基于Springboot+Vue的内蒙古景点旅游管理系统设计与实现(源码+数据库+文档)
java·vue.js·spring boot·论文·旅游·毕设·内蒙古景点旅游