scala项目的全局配置实践
- 定义一个 object 放一些常量名,相当于各种属性的key值
object MktEnvironmentContants {// 系统环境变量val KEY_UAP_ZK_SERVER = "uap.zk.server"val KEY_UAP_SERVICE_CONSOLE_PORT = "uap.service.console.port"val KEY_UAP_SERVICE_ANALYZE_PORT = "uap.service.analyze.port"val KEY_UAP_SERVICE_PREDICT_PORT = "uap.service.predict.port"}
- 通过启动命令传递参数并通过 System.getProperty 获取
-Dspring.profiles.active=dev
- 根据启动命令的类型加载不同的配置文件,并将加载到的内存放入系统配置里面。整个过程中都是java内置的代码
object PropertiesUtil extends RichLogging {/*** 加载properties文件,以classpath为根目录** @param fileName 文件名* @return*/def loadProperties(fileName: String): Properties = {val inputStream: InputStream = Thread.currentThread().getContextClassLoader.getResourceAsStream(fileName)val properties = new Properties()properties.load(inputStream)properties}/*** 加载属性到系统属性** @param fileName 文件名*/def loadProperteisToSystem(fileName: String): Unit = {val envProperties = PropertiesUtil.loadProperties(fileName)val envNames = envProperties.propertyNames()while (envNames.hasMoreElements) {val key = envNames.nextElement.asInstanceOf[String]System.getProperties.setProperty(key, envProperties.getProperty(key))}}/*** 显示系统属性*/def showSystemProperties(): Unit = {val properties = System.getPropertiesval ele = properties.propertyNameswhile (ele.hasMoreElements) {val key = ele.nextElement.asInstanceOf[String]logger.info(s"System Properties, key: $key, value: ${properties.getProperty(key)}")}}
}
- 使用常量定义的key值去系统中取配置
System.getProperty(MktEnvironmentContants.KEY_UAP_PROFILE_ACTIVE)
scala项目的全局配置实践相关推荐
- 全局配置axios、axios 拦截器 和 proxy 跨域代理
目录 一.全局配置axios 1. 为什么要全局配置 axios 2. 如何全局配置 axios 3. 在 vue3 的项目中全局配置axios 4. 在 vue2 的项目中全局配置 axios ...
- sbt编程语言scala的构建工具配置及项目构建(附带网盘下载)
SBT简介 SBT 是 Scala 的构建工具,全称是 Simple Build Tool, 类似 Maven 或 Gradle. Java可以用Maven快速构建项目,scala用SBT快速构建一个 ...
- 干货:在Flutter项目下安卓flavor打包配置实践
????????关注后回复 "进群" ,拉你进程序员交流群???????? 作者丨狐友技术团队 来源丨搜狐技术产品(ID:sohu-tech) 本文字数:3894 字 预计阅读时间 ...
- 干货: 在 Flutter 项目下安卓 flavor 打包配置实践 | 开发者说·DTalk
本文原作者: 狐友技术团队,原文发布于搜狐技术产品: https://mp.weixin.qq.com/s/uOMxhc8xnFPmi7j_Z5JqVg 1.前言 Flutter 是 Google ...
- 魔方APP项目-02-服务端项目搭建,创建manage.py文件、构建全局初始化函数创建app应用对象、通过终端脚本启动项目、项目加载配置、数据库初始化、日志初始化、蓝图初始化
服务端项目搭建 新建项目目录mofangapi,并创建虚拟环境 mkvirtualenv mofang 安装开发中使用的依赖模块 pip install flask==0.12.4 pip insta ...
- 局部配置和全局配置_06. 教你零基础搭建小程序(解读全局配置文件-tabBar字段)...
自从开始在知乎上发教程后,发现一个事情啊, 大家对于我写的教程,都在偷偷地收藏~~ 但是, 却没有银点赞~ 知乎这个平台吧,点赞的分量比收藏更大, 这里也不是要赞(我知道自己还能做的更好), 只是希望 ...
- 安装SBT环境运行Scala项目
介绍2种spark安装方式 通过docker的方式安装 下载docker文件 https://gitee.com/pingfanrenbiji/docker-spark docker-compose ...
- sbt介绍与构建Scala项目
一.sbt简介 sbt是类似ANT.MAVEN的构建工具,全称为Simple build tool,是Scala事实上的标准构建工具. 主要特性: 原生支持编译Scala代码和与诸多Scala测试框架 ...
- 项目版本管理的最佳实践:gitflow基础篇
对于项目版本管理,你是否存在这样的痛点:项目分支多而杂不好管理,git log界面commit信息错乱复杂无规范,版本回退不知道选择什么版本合适--. 项目版本管理的最佳实践系列,笔者将以两篇文章的形 ...
最新文章
- 用算法代替生物大脑,90后博士造出活的微型机器人登上Science子刊
- java ancestor_java – 家谱祖先查找算法
- 单列表_使用Excel中的quot;记录单quot;功能快速录入数据
- java编译机制_java的编译机制
- 如何用手机打开dcm格式图片_如何防止自己的图片被盗用?这 4 招教你优雅加水印...
- mysql large_【转】mysql对large page的支持
- Windows 10 上强制Visual Studio以管理员身份运行
- 安装mysql 错误重新安装
- Tensorflow+Keras+VGG19 猫狗大战分类
- 虎年全新姓氏头像制作多模板微信小程序2022新版头像制作源码支持多种流量主模式亲测
- element plus 部分组件转英文问题
- python封包和解包_python解析网络封包方法
- 携手“国乒梦之队”,臻迪科技助力奥运新思路
- 是否开启谷歌Ad广告中的搜索网络合作伙伴?
- Hikari数据库连接池泄露问题排查
- 关于mysql的题目_关于MySQL的经典例题50道 答案参考
- python算24点穷举法_24点游戏7节课–第1节-游戏介绍与基本算法 | 学步园
- epub格式电子书剖析之三:NC…
- Rocksdb prefix Bloomfilter
- H.265的各种帧(详解):接入图像
热门文章
- 有关java开发的单词_Java开发常用英语单词表
- 数据基础设施,证券行业跑赢时代的新引擎
- nacos的命名空间
- VUE解决warning(Emitted value instead of an instance of Error) el-table-column v-for=item in batch问题
- 理科生学计算机数字媒体方向,文科生,理科生,分别可以报哪些专业?5分钟了解文理报考大方向...
- CTF中字符长度限制下的命令执行 rce(7字符5字符4字符)汇总
- 高级shell编程笔记(第十二章 外部过滤器,程序和命令)
- python操作word详细操作_Python操作Word的入门教程
- 如何获取自己的公网地址
- igraph入门教程