读取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 ...
随机推荐
- 图解数据库中的各种 JOIN
本文转载至https://mazhuang.org/2017/09/11/joins-in-sql/#full-outer-join-excluding-inner-join,如需阅读原文请至上述链接 ...
- SVN将项目代码加入svn版本控制
将已有项目代码加入svn版本控制 - TortoiseSVN入门篇Windows下SVN实用教程(以TortoiseSVN作为客户端(client)) 翻译: Bravo Young Next: 版本 ...
- Sonya and Exhibition
http://codeforces.com/group/1EzrFFyOc0/contest/1004/problem/B #include<iostream> #include<c ...
- Pytest命令行执行测试
Pytest命令行执行测试 from collections import namedtuple Task = namedtuple('Task', ['summary','owner','done' ...
- 有关PHPstorm的git环境的配置和git密钥的生成总结
phpstorm上配置git环境的配置总感觉很简单,没发现看似简单的东西浪费我好多时间.我在网上查了一下关于phpstorm的git环境的配置没有具体的总结 所以我把自己的配过程简单总结了一下 接下来 ...
- vue-cli3 将自己写的组件封装成可引入的js文件
一.调整项目结构 首先用 vue-cli 创建一个 default 项目 // 顺便安利一篇文章<Vue 爬坑之路(十二)—— vue-cli 3.x 搭建项目> 当前的项目目录是这样的: ...
- 关于EZDML数据库表结构制作设计工具使用踩的坑
我使用的是一款EZDML的数据库表结构制作设计工具 最开始在数据库创建数据库名为personalmall,基字符集为默认,数据库排序规则也是默认,创建完成之后 去EZDML生成SQL 点击执行sql ...
- centos6.5 安装emqtt
emqtt有监控界面,集群配置也非常简单. # yum -y update # yum install unzip vim wget xsltproc fop tk unixODBC unixODBC ...
- web上传下载文件
WebService代码: /// /// 上传文件 /// /// 文件的byte[] /// 上传文件的路径 /// 上传文件名字 /// ...
- c++类的基本形式(一个简单类的简单sample,命名空间)
有人把类说成是占用固定大小内存块的别名,其定义时不占用空间 #include<iostream> #include<string> using namespace std; c ...