您的位置:首页 > 编程语言 > Java开发

Spring通过类方法加载配置文件

2018-03-06 18:27 676 查看
通过调用某个类中的方法通过流的方式获取到配置文件
public static Properties getRedisResourcePath(){
String filePath = Config.getConfigFolder() + "redis.properties";
Properties properties = new Properties();
try {
properties.load(new FileInputStream(new File(filePath)));
} catch (IOException e) {
logger.error("redis 配置配置文件加载失败~~ ", e);
}
return properties;
}

下面的bean实体实现了配置信息的读入,如此配置中的就可以再下面的beans实体中可以调用了
<bean id="refRedisProperties" class="org.springframework.beans.factory.config.PropertiesFactoryBean">
<property name="properties">
    <value>#{T(com.utils.RedisConfig).getRedisResourcePath()}</value>
   </property>
</bean>

下面redis的 配置信息通过配置引用的方式,通过bean对象获取
<context:property-placeholder properties-ref="refRedisProperties" />
<!-- 配置redis 实例-->
<bean id="jedisPoolConfig" class="redis.clients.jedis.JedisPoolConfig">
<property name="timeBetweenEvictionRunsMillis" value="${redis.pool.timeBetweenEvictionRunsMillis}" />
<property name="minEvictableIdleTimeMillis" value="${redis.pool.minEvictableIdleTimeMillis}" />
<property name="maxIdle" value="${redis.pool.maxIdle}"/>
<property name="minIdle" value="${redis.pool.minIdle}"/>
<property name="maxTotal" value="${redis.pool.maxTotal}"/>
<property name="maxWaitMillis" value="${redis.pool.maxWait}"/>
<property name="testOnBorrow" value="${redis.pool.testOnBorrow}"/>
<property name="testOnReturn" value="true"/>
<property name="testWhileIdle" value="true"/>
</bean>

<!-- redis的连接池pool,不是必选项:timeout/password  -->
<bean id = "jedisSentinelPool" class="redis.clients.jedis.JedisSentinelPool" destroy-method="destroy">
<constructor-arg index="0" value="${redis.sentinels.masterName}" />
<constructor-arg index="1">
<set>
<value>${redis.sentinels.server1}</value>
<value>${redis.sentinels.server2}</value>
</set>
</constructor-arg>
<constructor-arg index="2" ref="jedisPoolConfig" />
<constructor-arg index="3" value="3000" type="int"/>
</bean>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: