读取yml 文件中的参数
第一种方法:
yml 文件:
spring:
main:
allow-bean-definition-overriding: true
cloud:
consul:
host: 192.168.1.1
port: 8500
discovery:
enabled: true
prefer-ip-address: true
instance-id: ${spring.application.name}:${spring.cloud.client.ip-address}:${server.port}
#健康检查失败后10秒会注销该服务
health-check-critical-timeout: 10s
config:
fail-fast: true
redis:
open: true # 是否开启redis缓存 true开启 false关闭
database: 0
host: 192.168.1.1
port: 6379
password: aaa123 # 密码(默认为空)
timeout: 6000ms # 连接超时时长(毫秒)
jedis:
pool:
max-active: 1000 # 连接池最大连接数(使用负值表示没有限制)
max-wait: -1ms # 连接池最大阻塞等待时间(使用负值表示没有限制)
max-idle: 20 # 连接池中的最大空闲连接
min-idle: 5 # 连接池中的最小空闲连接
2: 使用:
@Aspect
@Configuration
public class RedisAspect {
private Logger logger = LoggerFactory.getLogger(getClass());
//是否开启redis缓存 true开启 false关闭
@Value("${spring.redis.open: false}")
private boolean open; @Around("execution(* com.zhangtao.common.utils.RedisUtils.*(..))")
public Object around(ProceedingJoinPoint point) throws Throwable {
Object result = null;
if(open){
try{
result = point.proceed();
}catch (Exception e){
logger.error("redis error", e);
throw new RRException("Redis服务异常");
}
}
return result;
}
}
第二种方法:
1: 在yml 中设置参数:
umeng:
push:
androidAppKey: 5580e58867e58e44f2000000
androidAppMasterSecret: iyqviswd8fynx5snbpga9og9vg000000
iosAppKey: 55b9e72c67e58e1cbc000000
iosAppMasterSecret: liubgwrxmtyh83n03muqkwgvu000000
productionMode: false 2:新建class 文件:
@Configuration
@ConfigurationProperties(prefix = "umeng.push")
public class UmengConfig { private String androidAppKey; private String androidAppMasterSecret; private String iosAppKey; private String iosAppMasterSecret; private boolean productionMode; private String aliasType; public String getAndroidAppKey() {
return androidAppKey;
} public void setAndroidAppKey(String androidAppKey) {
this.androidAppKey = androidAppKey;
} public String getAndroidAppMasterSecret() {
return androidAppMasterSecret;
} public void setAndroidAppMasterSecret(String androidAppMasterSecret) {
this.androidAppMasterSecret = androidAppMasterSecret;
} public String getIosAppKey() {
return iosAppKey;
} public void setIosAppKey(String iosAppKey) {
this.iosAppKey = iosAppKey;
} public String getIosAppMasterSecret() {
return iosAppMasterSecret;
} public void setIosAppMasterSecret(String iosAppMasterSecret) {
this.iosAppMasterSecret = iosAppMasterSecret;
} public boolean isProductionMode() {
return productionMode;
} public void setProductionMode(boolean productionMode) {
this.productionMode = productionMode;
} public String getAliasType() {
return aliasType;
} public void setAliasType(String aliasType) {
this.aliasType = aliasType;
}
}
3: 使用yml 中的参数:
在另外的class 中:
先注入:
@Autowired
private UmengConfig umengProperty; 即可在方法中使用:
IOSUnicast unicast = new IOSUnicast(umengProperty.getIosAppKey(), umengProperty.getIosAppMasterSecret());
读取yml 文件中的参数的更多相关文章
- 通过Shell脚本读取properties文件中的参数时遇到\r换行符的问题
今天在编写微服务程序启动脚本的时候,遇到一个比较奇葩的问题,下面给出具体描述: 目标:通过读取maven插件打包时生成的pom.properties文件,获取里面的应用名称和应用版本号,然后拼接得到s ...
- Spring boot中普通工具类不能使用@Value注入yml文件中的自定义参数的问题
在写一个工具类的时候,因为要用到yml中的自定义参数,使用@Value发现值不能正常注入,都显示为null: yml文件中的自定义格式 调用工具类的时候不能new的方式 要使用@Autowired的方 ...
- 读取xml文件中的配置参数实例_java - JAVA
文章来源:嗨学网 敏而好学论坛www.piaodoo.com 欢迎大家相互学习 paras.xml文件 <?xml version="1.0" encoding=" ...
- Springboot读取自定义的yml文件中的List对象
Yml文件(novellist.xml)如下: novellist: list: - name: 笑傲江湖 type: 武侠 master: 令狐冲 a ...
- SpringMVC 实现POI读取Excle文件中数据导入数据库(上传)、导出数据库中数据到Excle文件中(下载)
读取Excale表返回一个集合: package com.shiliu.game.utils; import java.io.File; import java.io.FileInputStream; ...
- springboot2.0application.在yml文件中添加自定义配置
1. 在application.yml文件中添加自定义配置 app: platform: version: code: '1.0.0' 2. 定义bean类 具体格式: 其中的成员变量名称需要与配 ...
- python读取配置文件,yaml模块读取yml文件
ymal文件编写语法参考http://www.ruanyifeng.com/blog/2016/07/yaml.html ymal在python中的安装:pip install pyyaml yml文 ...
- 你有没有觉得邮件发送人固定配置在yml文件中是不妥当的呢?SpringBoot 动态设置邮件发送人
明月当天,不知道你有没有思念的人 前言 之前其实已经写过SpringBoot异步发送邮件,但是今天在一个小项目中要用到发送邮件时,我突然觉得邮件发送人只有一个,并且固定写在yml文件中,就是非常的不妥 ...
- 读取Excel文件中的单元格的内容和颜色
怎样读取Excel文件中的单元格的内容和颜色 先创建一个Excel文件,在A1和A2中随意输入内容,设置A1的字体颜色为红色,A2的背景为黄色.需要 using Excel = Microsoft.O ...
随机推荐
- STM32窗口看门狗WWDG库函数的一点思考
WWDG当前计数器的值以及激活位和WWDG_CR这个寄存器相关.如下图所示: 而STM32f10x的库函数提供了两种设置WWDG_CR[0:6]位的方式. WWDG_SetCounter方法 #def ...
- 关于反编译pyc的一点技巧
现在最流行的是用 https://github.com/rocky/python-uncompyle6 但是有些python小版本不一样,比如2.7.6的某版本,开头的magic number在这个项 ...
- linux实操_shell设置环境变量
1.定义环境变量 在/etc/profile文件中定义一个环境变量 2.查看环境变量 echo $WDC_HOME 3.在shell程序中实用WDC_HOME
- oracle 12c 安装补丁报错
环境: centos 7.5 oracle 12.2.0.1 报错: 执行一下报错: 更新dba_registry_sqlpatch $ORACLE_HOME/OPatch/datapatch -ve ...
- spring+mybatis所需各种服务的搭建
1.mysql5.6 2.jdk1.7 3.zookeeper 4.dubbo-admin 5.activtymq 6.maven 7.nexus 8.mybatis脚本文件生成工具使用
- 10、组件注册-@Import-使用ImportBeanDefinitionRegistrar
10.组件注册-@Import-使用ImportBeanDefinitionRegistrar public interface ImportBeanDefinitionRegistrar { /** ...
- 011_9*9 乘法表(编写 shell 脚本,打印 9*9 乘法表)
#!/bin/bashfor i in `seq 9`do for j in `seq $i` do echo -n "$i*$j=$[i*j] &q ...
- [Luogu] 均分数据
题面:https://www.luogu.org/problemnew/show/P2503 题解:https://www.zybuluo.com/wsndy-xx/note/1141736
- 快速幂 x
快速幂! 模板如下: #include<iostream> #include<cmath> #include<cstdio> #define LL long lon ...
- c++容器 算法 迭代
#include <iostream> #include <vector> using namespace std; int main() { // 创建一个向量存储 int ...