SpringBoot 自动配置--常用配置

本文涉及的产品
Redis 开源版,标准版 2GB
推荐场景:
搭建游戏排行榜
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
日志服务 SLS,月写入数据量 50GB 1个月
简介: SpringBoot 自动配置--常用配置

SpringBoot 自动配置😊


resources\application.properties 修改配置💕


● 各种配置都有默认, 可以在resources\application.properties 修改,application.properties 文件我们可以手动创建

#默认server.port=8080
server.port=10000
#比如: 默认spring.servlet.multipart.max-file-size=1MB
#该属性可以指定springboot 上传文件大小的限制
#默认配置最终都是映射到某个类上,比如这里配置会映射到MultipartProperties
#把光标放在该属性,ctrl+b 就可以定位该配置映射到的类
spring.servlet.multipart.max-file-size=10MB


resources\application.properties 常用配置💕

#端口号
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
#数据库连接配置
#mysql 数据库url
mysql.one.jdbc-url=jdbc:mysql://127.0.0.1:3306/test?serverTimezone=Asia/Shanghai&useSSL=false
#mysql 数据库用户名
mysql.one.username=
#数据库密码
mysql.one.password=
#线程池允许的最大连接数
mysql.one.maximum-pool-size=15
#日志打印:日志级别trace<debug<info<warn<error<fatal 默认级别为info,即默认打印info 及其以上级别的日志
#logging.level 设置日志级别,后面跟生效的区域,比如root 表示整个项目,也可以设置为某个包下,
也可以具体到某个类名(日志级别的值不区分大小写)
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
#指定日期格式化时区,比如America/Los_Angeles 或者GMT+10
spring.jackson.time-zone=GMT+8
#设置统一字符集
spring.http.encoding.charset=utf8
#redis 连接配置
# redis 所在主机ip 地址
spring.redis.host=
#redis 服务器密码
spring.redis.password=
#redis 服务器端口号
spring.redis.port=
#redis 数据库的索引编号(0 到15)
spring.redis.database=14
## 连接池的最大活动连接数量,使用负值无限制
spring.redis.pool.max-active=8
## 连接池的最大空闲连接数量,使用负值表示无限数量的空闲连接
spring.redis.pool.max-idle=8
## 连接池最大阻塞等待时间,使用负值表示没有限制
spring.redis.pool.max-wait=-1ms
## 最小空闲连接数量,使用正值才有效果
spring.redis.pool.min-idle=0
## 是否启用SSL 连接.
spring.redis.ssl=false
## 连接超时,毫秒为单位
spring.redis.timeout= 18000ms
## 集群模式下,集群最大转发的数量
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:5060


resources\application.properties 自定义配置💕


● 还可以在properties 文件中自定义配置,通过@Value(“${}”)获取对应属性值

application.properties 文件

my.website=https://www.baidu.com


配置bean,通过注解获取properties 文件中的k,得到他的值

//某个Bean
@Value("${my.website}")
private String bdUrl;


SpringBoot 在哪配置读取application.properites💕


1、打开ConfigFileApplicationListener.java , 看一下源码


df7806e092893ae92fd15a05c434c592.png

2、测试, 如果我们把application.properties 放在resources\config 目录下, 你会发现依然是管用的。

4d9a4edd20a543b8dbc0112e3a5311bc.png

3、测试完毕, 记得恢复到原来的位置.


😄总结


1.放在resources目录下的application.properties 等配置文件, 经过反编译默认放到内路径classes目录下。

2.如果没有放在resources目录下,就不能识别无法在classes目录生成。

3.自定义配置如果在配置文件中需要使用中文需要使用Unicode编码,否则会产生乱码无法识别。


文章到这里就结束了,如果有什么疑问的地方请指出,诸大佬们一起来评论区一起讨论😁

希望能和诸大佬们一起努力,今后我们一起观看感谢您的阅读🍻

如果帮助到您不妨3连支持一下,创造不易您们的支持是我的动力🤞

相关文章
|
DataX
vue3实现列表搜索功能
vue3实现列表搜索功能
493 0
|
小程序 测试技术 API
微信小程序学习笔记(6) -- 本地生活项目
微信小程序学习笔记(6) -- 本地生活项目
236 0
|
关系型数据库 分布式数据库 数据库
PolarDB闪电助攻,《香肠派对》百亿好友关系实现毫秒级查询
PolarDB分布式版助力《香肠派对》实现百亿好友关系20万QPS的毫秒级查询。
PolarDB闪电助攻,《香肠派对》百亿好友关系实现毫秒级查询
|
Kubernetes Cloud Native 安全
阿里云原生容器服务产品体系-ACK Pro 托管集群
阿里云原生容器服务产品体系-ACK Pro 托管集群
阿里云原生容器服务产品体系-ACK Pro 托管集群
|
运维 监控 安全
构建高效自动化运维系统:DevOps在企业级应用的实现路径
【7月更文挑战第54天】在当今IT领域,DevOps作为一种文化和实践,旨在弥合开发与运维之间的鸿沟,以实现更快速、更可靠的产品交付。本文将深入探讨在企业环境中如何构建一个高效的自动化运维系统,不仅涵盖理论框架,还包括具体实施步骤和最佳实践。通过持续集成(CI)、持续部署(CD)、基础设施即代码(IaC)等关键概念的融合运用,文章旨在为读者提供一个清晰的指导,以便在其组织中落实DevOps策略,并实现运维效率的显著提升。
|
Windows
【Azure 环境】在Windows环境中抓取网络包(netsh trace)后,如何转换为Wireshark格式以便进行分析
【Azure 环境】在Windows环境中抓取网络包(netsh trace)后,如何转换为Wireshark格式以便进行分析
539 0
|
XML Java 应用服务中间件
idea与eclipse项目相互导入方式
idea与eclipse项目相互导入方式
333 1
|
监控 关系型数据库 MySQL
在Linux中,mysql的innodb如何定位锁问题?
在Linux中,mysql的innodb如何定位锁问题?
|
机器学习/深度学习 文字识别 算法
百度飞桨(PaddlePaddle) - PaddleHub OCR 文字识别简单使用
百度飞桨(PaddlePaddle) - PaddleHub OCR 文字识别简单使用
984 0
|
存储 C语言 数据格式
用二进制方式向文件读写一组数据
用二进制方式向文件读写一组数据
162 1