Java学习

java,spring,structs,hibernate,jsf,ireport,jfreechart,jasperreport,tomcat,jboss -----本博客已经搬家了,新的地址是 http://www.javaly.cn 如果有对文章有任何疑问或者有任何不懂的地方,欢迎到www.javaly.cn (Java乐园)指出,我会尽力帮助解决。一起进步

 

java中Properties类的使用

package com.adrop.util;

 

import Java.io.*;

import java.util.Properties;

import javax.servlet.http.*;

import javax.servlet.*;

import javax.servlet.jsp.*;

 

public class PropertiesUtil {

  private String fileName;

  private Properties p;

  private FileInputStream in;

private FileOutputStream out;

  /**

   * 根据传进的文件名载入文件

   * @param fileName String

   */

  public PropertiesUtil(String fileName) {

    this.fileName=fileName;

    File file = new File(fileName);

    try {

      in = new FileInputStream(file);

      p = new Properties();

      //载入文件

      p.load(in);

      in.close();

    }

    catch (FileNotFoundException e) {

      System.err.println("配置文件config.properties找不到!!");

      e.printStackTrace();

    }

    catch (Exception e) {

      System.err.println("读取配置文件config.properties错误!!");

      e.printStackTrace();

    }

  }

 

  /**

   * 配置文件一律为config.propertities,并且统一放在web应用的根目录下。

   * @return String

   */

  public static String getConfigFile(HttpServlet hs) {

 

    return getConfigFile(hs,"config.properties");

  }

  /**

   * 在servlet中使用,直接用this作为参数,HttpServlet类型

   * 根据配置文件名从当前web应用的根目录下找出配置文件

   * @param hs HttpServlet

   * @param configFileName String配置文件名字

   * @return String

   */

  public static String getConfigFile(HttpServlet hs, String configFileName) {

    String configFile = "";

    ServletContext sc = hs.getServletContext();

    configFile = sc.getRealPath("/" + configFileName);

    if (configFile == null configFile.equals("")) {

      configFile = "/" + configFileName;

    }

    return configFile;

  }

  /**

   * jsp中用pageContext作参数

   * @param hs PageContext

   * @param configFileName String 配置文件名字

   * @return String

   */

  public static String getConfigFile(PageContext hs, String configFileName) {

    String configFile = "";

    ServletContext sc = hs.getServletContext();

    configFile = sc.getRealPath("/" + configFileName);

    if (configFile == null configFile.equals("")) {

      configFile = "/" + configFileName;

    }

    return configFile;

  }

 

  /**

   * 列出所有的配置文件内容

   */

  public void list() {

    p.list(System.out);

  }

 

  /**

   * 指定配置项名称,返回配置值

   * @param itemName String

   * @return String

   */

  public String getValue(String itemName){

    return p.getProperty(itemName);

  }

 

  /**

   * 指定配置项名称和默认值,返回配置值

   * @param itemName String

   * @param defaultValue String

   * @return String

   */

  public String getValue(String itemName,

                         String defaultValue){

    return p.getProperty(itemName,defaultValue);

  }

 

  /**

   * 设置配置项名称及其值

   * @param itemName String

   * @param value String

   */

  public void setValue(String itemName,String value){

    p.setProperty(itemName,value);

    return;

  }

 

  /**

   * 保存配置文件,指定文件名和抬头描述

   * @param fileName String

   * @param description String

   * @throws Exception

   */

  public void saveFile(String fileName,String description)throws Exception{

    try {

      File f=new File(fileName);

      out

          = new FileOutputStream(f);

      p.store(out, description);//保存文件

      out.close();

    }

    catch (IOException ex) {

      throw new Exception

          ("无法保存指定的配置文件:"+fileName);

    }

  }

 

  /**

   * 保存配置文件,指定文件名

   * @param fileName String

   * @throws Exception

   */

  public void saveFile(String fileName)

      throws Exception {

    saveFile(fileName,"");

  }

 

  /**

   * 保存配置文件,采用原文件名

   * @throws Exception

   */

  public void saveFile() throws Exception {

    if(fileName.length()==0)

      throw new Exception

          ("需指定保存的配置文件名");

    saveFile(fileName);

  }

  /**

   * 删除一个属性

   * @param value String

   */

  public void deleteValue(String value){

    p.remove(value);

  }

  /**

   * main method for test

   * @param args String[]

   */

  public static void main(String[] args) {

    String file = "f:\\p.properties";

    PropertiesUtil pu = new PropertiesUtil(file);

    pu.list();

  }


private String getParam(String file) {
   Properties p = new Properties();
   try {
    InputStream in = getClass().getResourceAsStream(file);
    p.load(in);
    if (in != null)
     in.close();

   } catch (Exception e) {
    System.out.println("file not found");
   } finally {
    return p.getProperty("ip");
   }

}





}

posted on 2008-11-26 17:03 找个美女做老婆 阅读(296) 评论(0)  编辑  收藏


只有注册用户登录后才能发表评论。


网站导航:
 

导航

统计

公告

本blog已经搬到新家了, 新家:www.javaly.cn
 http://www.javaly.cn

常用链接

留言簿(6)

随笔档案

文章档案

搜索

最新评论

阅读排行榜

评论排行榜