最新要闻
- 当前要闻:90后女孩奋斗14年从服务员到博士生 要释放所有潜力:网友感慨太强
- 热门看点:地铁告示牌提醒“严禁黑车及马自达占用停放”引争议 南京官方解释尴尬
- 日本女歌手黑崎真音因病去世 年仅35岁
- 每日关注!沙特土豪要造巨型科幻建筑了:这次是世界最大立方体
- 当前信息:搭载全新12代酷睿N200处理器轻薄本仅 2599元!攀升笔记本开学季促销
- 数学家的小故事五十字_50 100字数学家的小故事
- 焦点播报:曾致2死3伤 特斯拉潮州事故鉴定结果已出:目前不会进行公布
- 微软与谷歌正面扳手腕:计划推出自家移动应用商店
- 【世界时快讯】放生大鱼游回岸边“致谢”放生者?别自作多情了 800万粉大V科普
- 焦点热议:卷死燃油车!新能源价格战打起来了:“迪王”都已坐不住
- 长安控诉银河之光抄袭背后 两家车企的设计师都是陈政
- 索尼WF-1000XM4降噪豆发布新固件:可同时连接2台设备
- 全球报道:女子帮网友表白:单日收入过万
- 享36个月超长质保!魅族20系列1元超前预订开启:立省699元
- 《福星小子》新动画角色公开 3月2日最新话登场
- 身材抢眼!75岁“终结者”施瓦辛格首演电视剧:经典台词“我回来了”
手机
iphone11大小尺寸是多少?苹果iPhone11和iPhone13的区别是什么?
警方通报辅警执法直播中被撞飞:犯罪嫌疑人已投案
- iphone11大小尺寸是多少?苹果iPhone11和iPhone13的区别是什么?
- 警方通报辅警执法直播中被撞飞:犯罪嫌疑人已投案
- 男子被关545天申国赔:获赔18万多 驳回精神抚慰金
- 3天内26名本土感染者,辽宁确诊人数已超安徽
- 广西柳州一男子因纠纷杀害三人后自首
- 洱海坠机4名机组人员被批准为烈士 数千干部群众悼念
家电
【天天播资讯】SpringBoot项目多层级多环境yml设计
需求场景
基础设施模块中有一些通用固定的基础配置。例如:日志的配置,Spring本身的配置以及MyBatis Plus相关的固定配置等等。 这些配置往往与环境无关,如何复用?
# 日志配置logging: level: # 记得配置到包名 com.agileboot: debug org.springframework: info pattern: console: "%date %thread %green(%level) [%cyan(%logger{10}):%magenta(%line)] %red(%method) | %msg%n"# Spring配置spring: # 文件上传 servlet: multipart: # 单个文件大小 max-file-size: 10MB # 设置总上传的文件大小 max-request-size: 20MB mvc: pathmatch: matching-strategy: ANT_PATH_MATCHER jackson: deserialization: fail-on-unknown-properties: false serialization: write-dates-as-timestamps: false date-format: yyyy-MM-dd HH:mm:ss
基础设施模块中还有一些独立于环境的配置。例如Mysql和Redis或者MQ之类的。如何区分环境?
# 数据源配置spring: # redis 配置 redis: # 地址 host: localhost # 端口,默认为6379 port: 36379 # 数据库索引 database: 0 # 密码 password: 12345 # 连接超时时间 timeout: 10s lettuce: pool: # 连接池中的最小空闲连接 min-idle: 0 # 连接池中的最大空闲连接 max-idle: 8 # 连接池的最大数据库连接数 max-active: 8 # #连接池最大阻塞等待时间(使用负值表示没有限制) max-wait: -1ms
日志相关的配置我们一般都配在logback.xml文件中。如何实现不同环境日志路径不一样?
(资料图)
想要达到的效果
- 复用基础设施模块中的固定配置。
- 区分多环境的配置。
- logback日志引入多环境配置。
详细代码实现在开源项目Agileboot中:https://github.com/valarchie/AgileBoot-Back-End
实现
假设我们有一个Admin模块,我们可以给它定义一份application.yml文件。文件中描述该模块特定的配置。比如端口,访问路径之类的。
# 开发环境配置server: # 服务器的HTTP端口,默认为8080 port: 8080 servlet: # 应用的访问路径 context-path: / tomcat: # tomcat的URI编码 uri-encoding: UTF-8 # 连接数满后的排队数,默认为100 accept-count: 1000 threads: # tomcat最大线程数,默认为200 max: 800 # Tomcat启动初始化的线程数,默认值10 min-spare: 100# Spring配置 如果需要无Mysql 无Redis直接启动的话 dev改为test# 生产环境把dev改为prodspring: profiles: active: basic,dev
在基础设施模块中新建applicaiton-basic.yml,配置一些与环境无关的基础固定复用配置。application-dev.yml,配置一些和环境相关的配置,例如数据库的配置。
然后在spring.profiles.active配置中指定basic和dev文件。
此时springboot会自动去找applicaiton-basic.yml和application-dev.yml文件。所以我们最终的配置文件是由applicaiton.yml+applicaiton-basic.yml+applicaiton-dev.yml叠加的配置。
日志的多环境配置,我们可以新建一份logback-spring.xml文件。假设我们想要根据环境配置不同的日志路径。可以在例如application-dev.yml文件中配置logging.file.path。
然后在logback-spring.xml文件中使用springProperty标签读取多环境yml中配置的路径。
此时日志的路径就会分别读取不同环境配置的路径了。
关于多层级多环境的yml及日志设计的内容比较少。在此稍作总结,希望有帮助到有类似需求的人。
欢迎加入全栈技术交流群:1398880
【天天播资讯】SpringBoot项目多层级多环境yml设计
天天热头条丨Kubernetes(K8S)应用案例
当前要闻:90后女孩奋斗14年从服务员到博士生 要释放所有潜力:网友感慨太强
热门看点:地铁告示牌提醒“严禁黑车及马自达占用停放”引争议 南京官方解释尴尬
日本女歌手黑崎真音因病去世 年仅35岁
世界时讯:04if分支语句
每日关注!沙特土豪要造巨型科幻建筑了:这次是世界最大立方体
当前信息:搭载全新12代酷睿N200处理器轻薄本仅 2599元!攀升笔记本开学季促销
Rust 知识积累(2)
环球观速讯丨Luffy项目:3、前端调整(全局css、全局配置、全局axios...),后端主页轮播图表设计,接口部分代码编写
世界热消息:pycharm破解版
环球精选!变量处理中的标准化方法
数学家的小故事五十字_50 100字数学家的小故事
焦点播报:曾致2死3伤 特斯拉潮州事故鉴定结果已出:目前不会进行公布
微软与谷歌正面扳手腕:计划推出自家移动应用商店
【世界时快讯】放生大鱼游回岸边“致谢”放生者?别自作多情了 800万粉大V科普
焦点热议:卷死燃油车!新能源价格战打起来了:“迪王”都已坐不住
长安控诉银河之光抄袭背后 两家车企的设计师都是陈政
高并发场景下常见的限流算法及方案介绍
组合数学笔记-计数原理
索尼WF-1000XM4降噪豆发布新固件:可同时连接2台设备
全球报道:女子帮网友表白:单日收入过万
享36个月超长质保!魅族20系列1元超前预订开启:立省699元
《福星小子》新动画角色公开 3月2日最新话登场
身材抢眼!75岁“终结者”施瓦辛格首演电视剧:经典台词“我回来了”
记录--如何优雅地校验后端接口数据
世界今亮点!New Bing怼人、说谎、PUA,ChatGPT已经开始胡言乱语了
要闻:全新起亚K3开启预售 新款起亚K3怎么样?
今热点:只要78元!《元能失控》登陆任天堂国行Switch:支持多人联机 太罕见
今日热闻!累计订单已超5万!比亚迪豪华MPV腾势D9 EV官宣涨价6000元
送女神绝佳好礼 好吃还能发圈!榴芒一刻礼盒大促:立减179元
环球速讯:恐怖!男子酒后吃布洛芬致皮肤大面积剥脱 医生:重度药疹
焦点滚动:另起炉灶?马斯克怒批ChatGPT 欲开发替代品
全球播报:Rust 知识积累(1)
世界百事通!让WPF中的DataGrid像Excel一样可以筛选
全球头条:Codeforces Round #854 by cybercats (Div. 1+2) 1799 A~G 题解
全球报道:2363. 合并相似的物品
【天天速看料】c语言运算符优先级实例解析
资讯:建设银行e路通不用了直接扔了吗_建设银行e路通
恐怕人类永远也搞不定真正的AI!
环球时讯:黄仁勋带着NVIDIA新品发布会来了!RTX 4070梦碎
大量年轻人成为“果粉” :苹果连三星大本营都快攻陷了
精选!AGM G2 Guardian发布:全球首款500米范围热成像手机
全球时讯:不怕停电了?董明珠:格力开始研究将储能技术应用冰箱上
新消息丨.NET MAUI
外敷仙人掌的禁忌和副作用_外敷仙人掌的禁忌
环球热文:官宣定档3月6日 领创科技旗舰荣耀Magic5系列即将国内亮相
需要去看医生的呼噜声什么样?这三种情况要特别注意:有危险
蔚来:阿尔卑斯全系车型采用800V方案 还将共享使用三代换电站
【全球新视野】男子反复发烧20多天被诊出黑热病:发病率仅0.0108/10万
环球快报:一加Buds Pro 2轻享版上架:48dB深度降噪
今热点:11 款顶级 MySQL 图形化工具汇总,总有一款适合你!(建议收藏)
【速看料】Python实战项目3-前后端连接/首页轮播图表设计
热头条丨剑指 Offer 55 - II. 平衡二叉树(java解题)
焦点速讯:安装node并创建vue项目
报告称每天工作超8小时心脏病风险增8成:很多公司拒绝996、启用四天工作制
比亚迪专业个性化品牌曝光:首车性能对标奔驰大G 年内发布
苹果将成本转嫁给果粉!2024年iPad Pro要大涨价
LOL帧率近乎翻倍!Intel Arc A750新驱动测试:大幅提升、最大短板没有了
丰田有队友了!宝马氢燃料SUV将路试:16磅氢能跑500公里
世界速读:CSS中的BFC、IFC、GFC、FFC
环球即时:Synchronized,我要一层一层剥开你的心
全球视点!轻松玩转makefile|基础知识
环球聚焦:曝吴秀波儿子家暴成性,女方晒照满嘴是血,指证男方出轨乱约
周杰伦演唱会数百万人疯抢!演唱会门票30秒卖光
环球新资讯:长安发律师函控诉银河之光抄袭 吉利回应:毫无根据、误导公众
环球微速讯:【同步、共享和内容协作软件】上海道宁与ownCloud让您的团队随时随地在任何设备上轻松处理数据
全白外观拥有硬核实力!影驰Z790金属大师D5 Wi-Fi白金版主板评测:内存轻松提速10%
环球快讯:越来越多PC用户不愿买显卡了:2022年Q4桌面独显销量暴跌43%
世界第一次!中国空间站看到了在轨航天员的“三维皮肤”
【时快讯】89元 小米无线键鼠套装2上架:鼠标轻至45g
环球精选!运酒撞破酒缸1分钟损失5万!男子:一坛酒1000斤 1斤50块钱
天天快看点丨易基因|独家分享:高通量测序后的下游实验验证方法——DNA甲基化篇
IPO参考:联域光电拟深市主板IPO 郝氏控股二次递表港交所
【全球快播报】感冒的食疗偏方秘方_感冒的食疗偏方
8尺夫人面对面!《生化危机8 VR》IGN 8分 MTC用户9.7分
环球热点评!40多万的车没有语音控制功能!宝马遭X3车主集体投诉
今日聚焦!一加Ace 2V搭载旗舰级2.8D微弧玻璃:手感温润如玉
世界讯息:续航1整年!小米智能门锁M20大屏猫眼版开售:首发1899元
世界要闻:《艾尔登法环》原子之心机械姐妹花Mod 性感吸睛
自得其乐是什么意思?自得其乐的名人例子有哪些?
12%是零点几?12%公积金是什么档次?
给据邮件是什么意思?给据邮件如何填写?
男主角性格冰冷的小说有哪些?男主角性格冰冷的小说推荐
兔子能喝牛奶吗?兔子吃的食物有哪些?
小米手机屏幕校准在哪里?小米手机屏幕有多大?
集成显卡可以玩英雄联盟吗?集成显卡和独立显卡有什么区别?
华为mate9哪一年生产的?华为mate9参数配置
可视化图表之奥妙——百分比堆积条形图
看热讯:基于开源IM即时通讯框架MobileIMSDK:RainbowChat-iOS端v6.2版已发布
常用的xpath
环球观察:mybatis plus映射postgreSQL数组
世界资讯:redis实现用户查询次数限制
军用三防手机有哪些?军用三防手机推荐
苏泊尔电磁炉滴滴响不加热是什么原因?苏泊尔电磁炉滴滴响不加热怎么解决?
最新资讯:完美全面屏!努比亚Z50 Ultra官宣3月7日发布
新消息丨控告抄袭!长安给吉利发去律师函
【环球新要闻】BBA压力来了!李想:今年理想将挑战30-50万豪华SUV市场20%份额
环球快消息!SRC挖掘之Access验证校验的漏洞挖掘
【世界热闻】tomcat源码分析(一)如何启动服务