歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux編程 >> Linux編程 >> Java中讀取資源文件的工具類

Java中讀取資源文件的工具類

日期:2017/3/1 10:39:48   编辑:Linux編程
  1. package com.justsy;
  2. import java.io.InputStream;
  3. import java.util.Properties;
  4. public class PropertiesManager {
  5. private String resName = "appstore.properties";
  6. private Properties prop = new Properties();
  7. public PropertiesManager configuration() {
  8. try {
  9. InputStream is = PropertiesManager.class.getClassLoader()
  10. .getResourceAsStream(resName);
  11. prop.load(is);
  12. if (is != null)
  13. is.close();
  14. } catch (Exception e) {
  15. System.out.println(e + "file " + resName + " not found");
  16. }
  17. return this;
  18. }
  19. public String getPara(String url) {
  20. return prop.getProperty(url);
  21. }
  22. public static void main(String[] args) {
  23. PropertiesManager pm = new PropertiesManager().configuration() ;
  24. System.out.println(pm.getPara("url"));
  25. }
  26. }

使用單例進行優化後的工具類

[java]

  1. package com.justsy.eas.util;
  2. import java.io.IOException;
  3. import java.io.InputStream;
  4. import java.util.Properties;
  5. import org.apache.log4j.Logger;
  6. /**
  7. * 讀取配置文件
  8. */
  9. public class PropertiesReader {
  10. private Logger logger = Logger.getLogger(Properties.class) ;
  11. private Properties properties ;
  12. private static PropertiesReader propertiesReader = new PropertiesReader() ;
  13. private String resName = "eas.properties" ;
  14. // 單例私有化構造方法
  15. private PropertiesReader(){
  16. InputStream is = PropertiesReader.class.getClassLoader()
  17. .getResourceAsStream(resName);
  18. properties = new Properties() ;
  19. try {
  20. properties.load(is);
  21. logger.info("加載配置信息!!") ;
  22. } catch (IOException e) {
  23. logger.warn("加載配置文件出錯!") ;
  24. //e.printStackTrace();
  25. }
  26. }
  27. // 得到PropertiesReader的實例
  28. public static PropertiesReader getInstance(){
  29. if(propertiesReader==null){
  30. return new PropertiesReader() ;
  31. }
  32. return propertiesReader ;
  33. }
  34. // 返回所有屬性
  35. public Properties getProperties(){
  36. return this.properties ;
  37. }
  38. public static void main(String[] args) {
  39. Properties properties = PropertiesReader.getInstance().getProperties() ;
  40. System.out.println(properties.getProperty("dbaddr"));
  41. }
  42. }
Copyright © Linux教程網 All Rights Reserved