Spring Boot 源码分析 数据源 + Mybatis 配置

公司今年开始使用 Spring Boot 开发,当然使用 Spring Boot 也是大势所趋,尤其是现在微服务的趋向,当然是选择基于Spring Boot 的 Spring Cloud。(所谓的 Spring 全家桶,哈哈哈)

一日,闲来无事,都说 Spring Boot 习惯优于配置,但是这习惯它到底在哪里配置实现了。

好奇心的驱使下,我偷偷翻看了 Spring Boot 下 数据源和Mybatis 的配置,我们在用的时候都是在 application.yml 和 application.properties 按规定写下配置值就可以直接使用。

application.yml 配置数据源

spring:
    datasource:
            type: com.zaxxer.hikari.HikariDataSource
            url: jdbc:mysql://10.0.**.*:3306/db?allowMultiQueries=true&useUnicode=true&characterEncoding=UTF-8&useSSL=false
            password: root
            username: root
            driver-class-name: com.mysql.jdbc.Driver
            minimum-idle: 5
            maximum-pool-size: 20
            idle-timeout: 600000
            connection-timeout: 30000
            max-lifetime: 1800000

application.properties 配置mybatis

# Mybatis
mybatis.mapperLocations=classpath:mapper/*.xml
mybatis.configLocation=classpath:mybatis.xml

但是有没有想过这样子写下来为什么就OK了,我们并没有在我们的代码里面去引用加载这些配置啊。假如改了其他名字可以不?,答案是:NO

不捉急,先上两张图过过瘾

《Spring Boot 源码分析 数据源 + Mybatis 配置》

《Spring Boot 源码分析 数据源 + Mybatis 配置》

看到了吧,两个jar

spring-boot-autoconfigure-1.5.4.RELEASE.jar

mybatis-spring-boot-autoconfigure-1.3.0.jar

这两个jar是Spring boot项目引入的,两个自动注入配置 jar,这两个jar里面的 DataSourceProperties ,MybatisProperties就是专门注入数据源,mybatis配置的,配置名称对应类里面的成员变量名称,通过set方法注入。

这下可明白了吧,Spring Boot 就是把 Spring里面习惯配置的东西封装起来减少配置,达到新建项目即可使用的效果。

对于 Spring Boot 还不是很熟的盆友可以看下这篇网络文章:Spring Boot干货系列-配置文件解析

题外话:Nginx配置的坑

《Spring Boot 源码分析 数据源 + Mybatis 配置》

location 后面的节点 /ajax/ 如果有 斜杠:/ 结尾

则反向代理地址 proxy_pass 后面也必须加斜杠:/ 结尾

关注公众号,分享干货,讨论技术,你的支持是我最大的动力!!!

《Spring Boot 源码分析 数据源 + Mybatis 配置》《Spring Boot 源码分析 数据源 + Mybatis 配置》

    原文作者:Spring Boot
    原文地址: https://blog.csdn.net/molashaonian/article/details/80726629
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞