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⼆阶提交协议的分布式事务数据源

相关推荐
源码技术栈2 分钟前
Java智能诊所管理系统源码 SaaS云门诊运维平台源码
java·大数据·运维·人工智能·源码·诊所·门诊
⑩-6 分钟前
滚动分页查询实战示例
java·redis
Q_Q5110082859 分钟前
python+django/flask创新型产品提前购系统
spring boot·python·django·flask·node.js·php
Han.miracle9 分钟前
数据库圣经--简单使用索引
java·数据库·sql·索引
码界奇点11 分钟前
Spring Boot 全面指南从入门到精通构建高效Java应用的完整路径
java·spring boot·后端·微服务
ytadpole12 分钟前
若依验证码渲染失效问题
java·linux·后端
洲星河ZXH15 分钟前
Java,其他类
java·开发语言
雨中飘荡的记忆17 分钟前
Drools规则引擎实战指南
java
曹牧22 分钟前
Java:@SuppressWarnings
java·开发语言