springboot 2.1.3.RELEASE版本解析.properties文件配置
1、有时为了管理一些特定的配置文件,会考虑单独放在一个配置文件中,如redis.properties:
#Matser的ip地址
redis.host=192.168.5.234
#端口号
redis.port=6379
#如果有密码
redis.password=root
#客户端超时时间单位是毫秒 默认是2000
redis.timeout=10000
#最大空闲数
redis.maxIdle=300
#连接池的最大数据库连接数。设为0表示无限制,如果是jedis 2.4以后用redis.maxTotal
#redis.maxActive=600
#控制一个pool可分配多少个jedis实例,用来替换上面的redis.maxActive,如果是jedis 2.4以后用该属性
redis.maxTotal=1000
#最大建立连接等待时间。如果超过此时间将接到异常。设为-1表示无限制。
redis.maxWaitMillis=1000
#连接的最小空闲时间 默认1800000毫秒(30分钟)
redis.minEvictableIdleTimeMillis=300000
#每次释放连接的最大数目,默认3
redis.numTestsPerEvictionRun=1024
#逐出扫描的时间间隔(毫秒) 如果为负数,则不运行逐出线程, 默认-1
redis.timeBetweenEvictionRunsMillis=30000
#是否在从池中取出连接前进行检验,如果检验失败,则从池中去除连接并尝试取出另一个
redis.testOnBorrow=true
#在空闲时检查有效性, 默认false
redis.testWhileIdle=true
对于springboot框架来说,可以使用加入相关注解将配置文件解析成对应的对象,方便在代码中使用
package com.example.springbootredis.config; import lombok.Data;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.PropertySource;
import redis.clients.jedis.JedisPool;
import redis.clients.jedis.JedisPoolConfig;
import redis.clients.jedis.Protocol; @Configuration
//redis前缀
@ConfigurationProperties(prefix = "redis")
//配置文件内容
@PropertySource("classpath:/config/redis.properties")
@Data
public class RedisConfig { private Logger logger = LoggerFactory.getLogger(RedisConfig.class);
/**
* Matser的ip地址
*/
private String host;
/**
* 端口号
*/
private Integer port;
/**
* 密码
*/
private String password;
/**
* 客户端连接超时时间,单位毫秒,默认是2000
*/
private Integer timeout;
/**
* 最大空闲数
*/
private Integer maxIdle;
/**
* 控制一个pool可分配多少个jedis实例,如果是jedis 2.4以后用该属性,2.4之前用的redis.maxActive
*/
private Long maxTotal;
/**
* 最大建立连接等待时间。如果超过此时间将接到异常。设为-1表示无限制。
*/
private Long maxWaitMillis;
/**
* 连接的最小空闲时间 默认1800000毫秒(30分钟)
*/
private Long minEvictableIdleTimeMillis;
/**
* 每次释放连接的最大数目,默认3
*/
private Long numTestsPerEvictionRun;
/**
* 逐出扫描的时间间隔(毫秒) 如果为负数,则不运行逐出线程, 默认-1
*/
private Long timeBetweenEvictionRunsMillis;
/**
* 是否在从池中取出连接前进行检验,如果检验失败,则从池中去除连接并尝试取出另一个
*/
private Boolean testOnBorrow;
/**
* 在空闲时检查有效性, 默认false
*/
private boolean testWhileIdle; @Override
public String toString() { return String.format("RedisConfig[host=%s,port=%s,password=%s,timeout=%s]",
host, port, password, timeout);
} }
这里主要使用了@Configuration,@ConfigurationProperties(prefix = "redis"),@PropertySource("classpath:/config/redis.properties")三个注解,springboot以前的版本是使用
@Configuration,@ConfigurationProperties(prefix = "redis",locations="classpath:/config/redis.properties")
2、对于一些简单的配置属性可以放在application文件中,在代码中使用@Value注解来获取,如
@Value("${spring.redis.host}") String host
springboot 2.1.3.RELEASE版本解析.properties文件配置的更多相关文章
- java解析properties文件
在自动化测试过程中,经常会有一些公用的属性要配置,以便后面给脚本使用,我们可以选择xml, excel或者json格式来存贮这些数据,但其实java本身就提供了properties类来处理proper ...
- Python:解析properties文件
在项目中遇到解析properties的情况,而Python中正好没有解析properties文件的现成模块,于是从网上找到了这个脚本,有一些小地方修改了一下 原博客: Python读写properti ...
- Springboot 2.1.1.RELEASE 版本 session保存到MySQL里面
1,pom.xml添加依赖: <!-- 数据库session管理 --> <dependency> <groupId>org.springframework.ses ...
- SpringBoot在logback.xml中读取application.properties中配置的日志路径
1.在springboot项目中使用logback记录日志,在logback.xml中配置日志存储位置时读取application.properties中配置的路径,在 logback.xml中配置引 ...
- QT在release版本产生pdb文件
##环境说明 QtCreator QtLibrary 编译器 Qt Creator 2.7.0 4.8.4-msvc msvc9.0(VS2008) ##背景说明 >项目中需要对发布版本追踪崩溃 ...
- 【Quartz】Spring Boot使用properties文件配置Quartz
(1)在resource目录下新建quartz.properties文件 #============================================================== ...
- 1. Spring基于xml加载和读取properties文件配置
在src目录下,新建test.properties配置文件,内容如下 name=root password=123456 logArchiveCron=0/5 * * * * ? 一种是使用sprin ...
- log4j用properties文件配置,无法应用过滤器的解决方法
properties文件仍然有错误 log4j:WARN Failed to set property [filter] to value "org.apache.log4j.varia.L ...
- spring 配置文件中使用properties文件 配置
配置Bean载入properties文件: <bean id="propertyPlaceholderConfigurer" class="org.springfr ...
随机推荐
- 使用ansible对思科交换机备份
先决条件 - 了解ansible基本操作 - 了解网络设备相关操作 - 了解linux相关操作 安装 安装EPEL yum install https://dl.fedoraproject.org/p ...
- 设置VS2015背景图片(转载)
设置方法很简单:安装扩展ClaudiaIDE 1.在这里下载扩展,https://visualstudiogallery.msdn.microsoft.com/9ba50f8d-f30c-4e33-a ...
- springboot-vue前后端分离session过期重新登录
springboot-vue前后端分离session过期重新登录 简单回顾cookie和session cookie和session都是回话管理的方式 Cookie cookie是浏览器端存储信息的一 ...
- c++并查集配合STL MAP的实现(洛谷P2814题解)
不会并查集的话请将此文与我以前写的并查集一同食用. 原题来自洛谷 原题 文字稿在此: 题目背景 现代的人对于本家族血统越来越感兴趣. 题目描述 给出充足的父子关系,请你编写程序找到某个人的最早的祖先. ...
- NLP(二十) 利用词向量实现高维词在二维空间的可视化
准备 Alice in Wonderland数据集可用于单词抽取,结合稠密网络可实现其单词的可视化,这与编码器-解码器架构类似. 代码 from __future__ import print_fun ...
- Spring Boot2 系列教程(一)纯 Java 搭建 SSM 项目
在 Spring Boot 项目中,正常来说是不存在 XML 配置,这是因为 Spring Boot 不推荐使用 XML ,注意,并非不支持,Spring Boot 推荐开发者使用 Java 配置来搭 ...
- 同步vmware虚拟机和主机的时间
1. 打开虚拟机->设置 2. 选择选项标签页,选中VMware Tools,勾选“将客户机时间与主机同步”
- gym/102059 E
gym/102059 待通过:A.D.G.J.M 已补过:E E:电路题,判断一个图是不是简单电路.不需要特殊的技巧,利用set存图,把度数为2的点都删掉,融入到一条边上即可. #include &l ...
- 分层图 单调决策性DP
easy 写法. #include<bits/stdc++.h> using namespace std; #define Fopen freopen("_in.txt" ...
- lightoj 1173 - The Vindictive Coach(dp)
题目链接:http://www.lightoj.com/volume_showproblem.php?problem=1173 题解:像这种题目显然可以想到n为几时一共有几种排列可以递推出来.然后就是 ...