SpringBoot—数据访问

与其明天开始,不如现在行动!


数据访问

1 整合SSM场景

  1. 导入依赖
    1. Lombok
    2. Spring Web
    3. Mybatis Framework
    4. MySQL Driver
  2. 配置文件中配置数据库连接
  3. 创建实体类
  4. 写Mapper接口
  5. 创建Mapper映射文件

2 自动配置原理

JDBC场景的自动配置

mybatis-spring-boot-starter导入了spring-boot-starter-jdbc,JDBC是操作数据库的场景

  1. org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration
    • 数据源的自动配置
    • 默认使用HikariDataSource
  2. org.springframework.boot.autoconfigure.jdbc.JdbcTemplateAutoConfiguration
    • 给容器中放了JdbcTemplate操作数据库
  3. org.springframework.boot.autoconfigure.jdbc.JndiDataSourceAutoConfiguration
  4. org.springframework.boot.autoconfigure.jdbc.XADataSourceAutoConfiguration
    • 基于XA二阶提交协议的分布式事务数据源
  5. org.springframework.boot.autoconfigure.jdbc.DataSourceTransactionManagerAutoConfiguration
    • 支持事务

MyBatisAutoConfiguration配置MyBatis的整合流程

mybatis-spring-boot-starter导入了mybatis-spring-boot-autoconfigure的MyBatis自动配置包

  1. org.mybatis.spring.boot.autoconfigure.MybatisLanguageDriverAutoConfiguration
  2. org.mybatis.spring.boot.autoconfigure.MybatisAutoConfiguration
    • 必须在数据源配置好之后才配置
    • 给容器中放SqlSessionFactory组件,创建和数据库的一次会话
    • 给容器中放SqlSessionTemplate组件,操作数据库

MyBatis的自动配置在绑定在MybatisProperties这个类中

3 定位生效的配置

#开启调试模式,详细打印开启了哪些自动配置
debug = true
#Positive(生效的自动配置),Negative(不生效的自动配置)

💎总结

本文中若是有出现的错误请在评论区或者私信指出,我再进行改正优化,如果文章对你有所帮助,请给博主一个宝贵的三连,感谢大家😘!!!


相关推荐

  1. SpringBoot数据访问

    2023-12-31 09:08:04       41 阅读
  2. springboot actuator 配置所有endpoints可以访问

    2023-12-31 09:08:04       34 阅读

最近更新

  1. TCP协议是安全的吗?

    2023-12-31 09:08:04       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2023-12-31 09:08:04       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2023-12-31 09:08:04       18 阅读
  4. 通过文章id递归查询所有评论(xml)

    2023-12-31 09:08:04       20 阅读

热门阅读

  1. LeetCode //C - 1207. Unique Number of Occurrences

    2023-12-31 09:08:04       39 阅读
  2. pytorch 多卡训练 accelerate gloo

    2023-12-31 09:08:04       39 阅读
  3. FPGA和DSP的区别 FPGA与DSP的区别(粗略整理)

    2023-12-31 09:08:04       45 阅读
  4. dbf文件批量合成excel

    2023-12-31 09:08:04       40 阅读
  5. minio命令行详解

    2023-12-31 09:08:04       36 阅读
  6. mysql聚合函数andjson_object 例子

    2023-12-31 09:08:04       32 阅读
  7. 【全网首发】洛谷P2678 [NOIP2015 提高组] 跳石头

    2023-12-31 09:08:04       40 阅读
  8. redis在linux集群部署

    2023-12-31 09:08:04       28 阅读