当前位置: 首页 > news >正文

SpringBoot常用配置

SpringBoot常用配置

SpringBoot通过application.propertiesapplication.yml文件提供丰富的配置选项,涵盖服务器、数据库、日志、安全等模块。以下是常见配置分类及示例:

服务器配置
server.port=8080  # 修改默认端口
server.servlet.context-path=/api  # 设置上下文路径
server.ssl.enabled=true  # 启用HTTPS
server.ssl.key-store=classpath:keystore.p12  # SSL证书路径
数据库配置
spring.datasource.url=jdbc:mysql://localhost:3306/test
spring.datasource.username=root
spring.datasource.password=123456
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.jpa.hibernate.ddl-auto=update  # Hibernate自动更新表结构
日志配置
logging.level.root=INFO  # 全局日志级别
logging.level.org.springframework.web=DEBUG  # 特定包日志级别
logging.file.name=app.log  # 日志文件输出路径
logging.pattern.console=%d{yyyy-MM-dd} [%thread] %-5level %logger{50} - %msg%n  # 控制台格式
缓存配置
spring.cache.type=redis  # 使用Redis缓存
spring.redis.host=localhost
spring.redis.port=6379
spring.cache.redis.time-to-live=600000  # 缓存过期时间(毫秒)
跨域配置
spring:mvc:cors:mappings:- path: /**allowed-origins: "*"allowed-methods: GET,POST
配置文件多环境切换
# application-dev.properties
spring.profiles.active=dev  # 激活开发环境配置
# application-prod.properties
spring.profiles.active=prod  # 激活生产环境配置
自定义配置
app.max-page-size=50  # 自定义参数
app.file-upload-dir=/tmp/uploads

通过@Value注解或@ConfigurationProperties绑定使用自定义配置:

@Value("${app.max-page-size}")
private int maxPageSize;@ConfigurationProperties(prefix = "app")
public class AppConfig {private String fileUploadDir;// getter/setter
}

在yaml中

spring:datasource:url: jdbc:mysql://127.0.0.1:3306/mycnblog?characterEncoding=utf8&useSSL=falseusername: rootpassword: rootdriver-class-name: com.mysql.cj.jdbc.Drivermvc:favicon:enable: falseprofiles:  #多平台配置active: dev
# 设置 Mybatis 的 xml 保存路径
mybatis:mapper-locations: classpath:mapper/*Mapper.xmlconfiguration: # 配置打印 MyBatis 执行的 SQLlog-impl: org.apache.ibatis.logging.stdout.StdOutImplmap-underscore-to-camel-case: true  #自动驼峰转换
# 配置打印 MyBatis 执行的 SQL
logging:file:name: logs/springboot.loglogback:rollingpolicy:max-file-size: 1KBfile-name-pattern: ${LOG_FILE}.%d{yyyy-MM-dd}.%ilevel:com:example:demo: debug

http://www.dtcms.com/a/395879.html

相关文章:

  • 【论文阅读】π0:用于通用机器人控制的视觉-语言-动作流模型
  • Spring 框架学习指南
  • Vue3 父子组件通信实战:props 与 provide/inject 方案对比及用法解析
  • el-image标签预览和VForm打包后项目上层级冲突问题
  • QML学习笔记(九)QML的全局对象
  • element里的select自定义输入的时候,不用点击下拉框选中自定义输入,而是当焦点失去的时候自动赋值输入的内容
  • 链改2.0+港促会,携手赋能 Web3引企赴港!
  • C++第二篇:命名空间(namespace)
  • vcsa 重启服务
  • QT 两种库写法 LIBS += .a和LIBS += -L -l
  • 比斯特自动化|电动自行车电池点焊机的作用与使用
  • Django 模型与 ORM 全解析(一):从基础到实战的完整指南
  • NW955NW960美光固态闪存NW963NW971
  • iOS 26 软件兼容性大检查,哪些 App 出问题、API 变动要注意、旧功能不支持兼容性测试全流程
  • HarmonyOS NEXT互动卡片开发:从原理到实战的完整指南
  • 邪修实战系列(6)
  • Clover: 1靶场渗透
  • 智慧供水管网监测解决方案:实现压力、流量、水质数据集与监控
  • 深入理解Java虚拟机内存模型
  • 什么是缺陷检测?机器视觉表面缺陷检测从定义到实战方法,避开漏判误判
  • Svelte:编译时优化原理、与传统虚拟DOM框架的性能对比性能优化
  • 属性描述符
  • JavaWeb之JSP 快递管理与过滤器详解
  • 《MedChat智能医疗问答系统》项目介绍
  • 使用FastAPI和Docker部署机器学习模型:从开发到生产的最佳实践
  • Per-Tensor 量化和Per-Channel 量化
  • 执行bat任务栏有图标显示,执行pycharm64.exe就没有是什么原因
  • 【Docker项目实战】使用Docker部署wealth-tracker个人资产分析工具
  • LeapMotion_Demo演示
  • 智慧图书管理|基于SprinBoot+vue的智慧图书管理系统(源码+数据库+文档)