1.基本介紹
1.springboot是什么?
2.快速入門
1.需求分析
2.環(huán)境配置
1.確認開發(fā)環(huán)境
2.創(chuàng)建一個maven項目
3.依賴配置 pom.xml
<!--導入springboot父工程-->
<parent>
<artifactId>spring-boot-starter-parent</artifactId>
<groupId>org.springframework.boot</groupId>
<version>2.5.3</version>
</parent>
<dependencies>
<!--配置maven項目場景啟動器,自動導入和web相關的包-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
</dependencies>
4.文件目錄
5.MainApp.java (啟動類,常規(guī)配置)
package com.sun.springboot;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
/**
* @author 孫顯圣
* @version 1.0
*/
//表示是一個springboot項目
@SpringBootApplication
public class MainApp {
public static void main(String[] args) {
//啟動springboot
SpringApplication.run(MainApp.class, args);
}
}
6.HelloController.java (測試Controller)
package com.sun.springboot.controller;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
/**
* @author 孫顯圣
* @version 1.0
*/
@Controller //仍然是spring注解
public class HelloController {
@ResponseBody
@RequestMapping("/hello")
public String hello() {
return "hello, springboot";
}
}
7.運行啟動類
8.瀏覽器向Conroller發(fā)送請求
3.快速入門小結(jié)
1.SpringBoot跟SSM的關系
2.pom.xml依賴關系圖
3.Sping,SpringMVC,SpringBoot的關系
4.約定優(yōu)于配置
2.依賴管理和自動配置
1.版本仲裁
1.什么是依賴管理?
2.查看SpringBoot父項目的默認依賴版本
1.pom.xml 找到springboot父工程
2.找到父工程的依賴
3.所有依賴的默認版本
3.自己指定依賴版本
1.方式一:在pom.xml中指定版本
2.方式二:在pom.xml使用 properties
標簽指定 version
2.starter場景啟動器
1.基本介紹
2.依賴樹
3.SpringBoot自動配置核心依賴
4.官方啟動器(spring-boot開頭)
5.第三方啟動器
3.自動配置
1.基本介紹
2.獲取ioc容器,查看SpringBoot自動配置的bean
3.SpringBoot默認掃描包
4.修改默認掃描包
1.需求分析
2.修改啟動類注解,增加要掃描的包
3.啟動測試
5.修改默認配置 resources\application.properties
1.基本介紹
2.創(chuàng)建一個resources\application.properties文件
3.根據(jù)SpringBoot的配置大全找到對應的配置并修改
4.關于application.properties配置文件的解釋
- 一個配置對應一個類的屬性使用alt + b可以查找到對應的配置類
- 對應的配置類會被注入到ioc容器中
5.自定義配置
6.SpringBoot常用配置一覽
#端口號
server.port=10000
#應用的上下文路徑(項目路徑)
server.servlet.context-path=/allModel
#指定 POJO 掃描包來讓 mybatis 自動掃描到自定義的 POJO
mybatis.type-aliases-package=com.cxs.allmodel.model
#指定 mapper.xml 的路徑
#(application 上配置了@MapperScan(掃面 mapper 類的路徑)和 pom.xml 中放行了 mapper.xml 后,
# 配 置 mapper-locations 沒 有 意 義 。 如 果 mapper 類 和 mapper.xml 不 在 同 一 個 路 徑 下 時 ,
mapper-locations 就有用了)
mybatis.mapper-locations=classpath:com/cxs/allmodel/mapper
#session 失效時間(單位 s)
spring.session.timeout=18000
#數(shù)據(jù)庫連接配置
#mysql 數(shù)據(jù)庫 url
mysql.one.jdbc-url=jdbc:mysql://127.0.0.1:3306/test?serverTimezone=Asia/Shanghai&useSSL=false
#mysql 數(shù)據(jù)庫用戶名
mysql.one.username=
#數(shù)據(jù)庫密碼
mysql.one.password=
#線程池允許的最大連接數(shù)
mysql.one.maximum-pool-size=15
#日志打印:日志級別 trace<debug<info<warn<error<fatal 默認級別為 info,即默認打印 info 及其以
上級別的日志
#logging.level 設置日志級別,后面跟生效的區(qū)域,比如 root 表示整個項目,也可以設置為某個包下,
也可以具體到某個類名(日志級別的值不區(qū)分大小寫)
logging.level.com.cxs.allmodel.=debug
logging.level.com.cxs.allmodel.mapper=debug
logging.level.org.springframework.web=info
logging.level.org.springframework.transaction=info
logging.level.org.apache.ibatis=info
logging.level.org.mybatis=info
logging.level.com.github.pagehelper = info
logging.level.root=info
#日志輸出路徑
logging.file=/tmp/api/allmodel.log
#配置 pagehelper 分頁插件
pagehelper.helperDialect=mysql
pagehelper.reasonable=true
pagehelper.supportMethodsArguments=true
pagehelper.params=count=countSql
#jackson 時間格式化
spring.jackson.serialization.fail-on-empty-beans=false
#指定日期格式,比如 yyyy-MM-dd HH:mm:ss,或者具體的格式化類的全限定名
spring.jackson.date-format=yyyy-MM-dd HH:mm:ss
#指定日期格式化時區(qū),比如 America/Los_Angeles 或者 GMT+10
spring.jackson.time-zone=GMT+8
#設置統(tǒng)一字符集
spring.http.encoding.charset=utf8
#redis 連接配置
# redis 所在主機 ip 地址
spring.redis.host=
#redis 服務器密碼
spring.redis.password=
#redis 服務器端口號
spring.redis.port=
#redis 數(shù)據(jù)庫的索引編號(0 到 15)
spring.redis.database=14
## 連接池的最大活動連接數(shù)量,使用負值無限制
#spring.redis.pool.max-active=8
#
## 連接池的最大空閑連接數(shù)量,使用負值表示無限數(shù)量的空閑連接
#spring.redis.pool.max-idle=8
#
## 連接池最大阻塞等待時間,使用負值表示沒有限制
#spring.redis.pool.max-wait=-1ms
#
## 最小空閑連接數(shù)量,使用正值才有效果
#spring.redis.pool.min-idle=0
#
## 是否啟用 SSL 連接. ##spring.redis.ssl=false
#
## 連接超時,毫秒為單位
#spring.redis.timeout= 18000ms
#
## 集群模式下,集群最大轉(zhuǎn)發(fā)的數(shù)量
#spring.redis.cluster.max-redirects=
#
## 集群模式下,逗號分隔的鍵值對(主機:端口)形式的服務器列表
#spring.redis.cluster.nodes=
#
## 哨兵模式下,Redis 主服務器地址
#spring.redis.sentinel.master=
#
## 哨兵模式下,逗號分隔的鍵值對(主機:端口)形式的服務器列表
#spring.redis.sentinel.nodes= 127.0.0.1:5050,127.0.0.1:506
7.解讀SpringBoot是從哪里讀取的配置文件
ctrl + n 進入ConfigFileApplicationListener
8.按需加載原則
1.基本介紹
2.autoconfigure包管理著所有的starter
9.關于xxxAutoConfiguration,xxxProperties,application.properties的關系
1.簡要介紹
- xxxProperties這個單例bean的屬性就是配置,讀取application.properties來修改默認的配置
- xxxAutoConfiguration這個單例bean的屬性中有xxxProperties,通過依賴注入獲取到xxxProperties的bean對象從而實現(xiàn)自動裝配
2.查看源碼
文章來源:http://www.zghlxwxcb.cn/news/detail-840404.html
3.debug展示ioc容器
文章來源地址http://www.zghlxwxcb.cn/news/detail-840404.html
到了這里,關于SpringBoot(依賴管理和自動配置)的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網(wǎng)!