如何读取.properties文件配置的两种方法
2012-11-29 15:23
901 查看
第一种方法:
import java.io.IOException; import java.io.InputStream; import java.io.InputStreamReader; import java.util.Properties; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.core.io.DefaultResourceLoader; import org.springframework.core.io.Resource; import org.springframework.core.io.ResourceLoader; import org.springframework.util.DefaultPropertiesPersister; import org.springframework.util.PropertiesPersister; /** * Properties Util函数. * * @author uniz */ public class PropertiesUtils { private static final String DEFAULT_ENCODING = "UTF-8"; private static Logger logger = LoggerFactory.getLogger(PropertiesUtils.class); private static PropertiesPersister propertiesPersister = new DefaultPropertiesPersister(); private static ResourceLoader resourceLoader = new DefaultResourceLoader(); /** * 载入多个properties文件, 相同的属性在最后载入的文件中的值将会覆盖之前的载入. * 文件路径使用Spring Resource格式, 文件编码使用UTF-8. * * @see org.springframework.beans.factory.config.PropertyPlaceholderConfigurer */ public static Properties loadProperties(String... resourcesPaths) throws IOException { Properties props = new Properties(); for (String location : resourcesPaths) { logger.debug("Loading properties file from:" + location); InputStream is = null; try { Resource resource = resourceLoader.getResource(location); is = resource.getInputStream(); propertiesPersister.load(props, new InputStreamReader(is, DEFAULT_ENCODING)); } catch (IOException ex) { logger.info("Could not load properties from classpath:" + location + ": " + ex.getMessage()); } finally { if (is != null) { is.close(); } } } return props; } public static String getDataVal(String key) { try { Properties properties = PropertiesUtils.loadProperties("/config/config.properties"); if (properties == null) return ""; return new String((properties.getProperty(key)) .getBytes("ISO8859_1"), "utf-8"); } catch (Exception e) { e.printStackTrace(); return null; } } }
第二种方法:
package com.cl.common.utils; import java.io.IOException; import java.io.InputStream; import java.io.InputStreamReader; import java.io.UnsupportedEncodingException; import java.util.Properties; import org.springframework.core.io.DefaultResourceLoader; import org.springframework.core.io.Resource; import org.springframework.util.DefaultPropertiesPersister; public class PropertiesUtils { public PropertiesUtils(){ } private static Properties props = new Properties(); public static void loadProperties(String path){ // InputStream is = null; // Resource rs = new DefaultResourceLoader().getResource(path); // try { // is = rs.getInputStream(); // new DefaultPropertiesPersister().load(props, new InputStreamReader(is,"UTF-8")); // } catch (UnsupportedEncodingException e) { // e.printStackTrace(); // } catch (IOException e) { // e.printStackTrace(); // } try { props.load(Thread.currentThread().getContextClassLoader().getResourceAsStream("/config/application.properties")); } catch (IOException e) { e.printStackTrace(); } } public static String getVal(String key){ return props.getProperty(key); } }
相关文章推荐
- Java代码中获取配置文件(config.properties)中内容的两种方法
- Java读取properties配置文件时,中文乱码解决方法
- JAVA读取Properties的六种方法--配置文件
- properties配置文件读取方法
- Java读取properties配置文件时,中文乱码解决方法
- 如何在SpringBoot下读取自定义properties配置文件
- Spring中配置和读取多个Properties文件的方式方法
- 2017.6.29 java读取.properties配置文件的几种方法
- Java中从properties配置文件中读取信息的几种方法
- 如何在SpringBoot下读取自定义properties配置文件
- Springboot读取配置文件的两种方法
- java读取.properties配置文件的几种方法 .
- #.java读取加载配置文件的两种方法
- 读取配置文件properties的方法
- spring读取properties和xml配置文件的方法
- java读取.properties配置文件的几种方法
- 方法:一个简单的读取配置文件.properties的工具类 JAVA
- java程序读取properties配置文件的两种方式,备忘
- 如何在SpringBoot下读取自定义properties配置文件
- JAVA通信编程(二)——如何读取java的properties配置文件(插播)