Home  >  Article  >  Java  >  Java background reading configuration file

Java background reading configuration file

巴扎黑
巴扎黑Original
2016-12-10 09:44:461930browse

I encountered a problem during development a few days ago. When reading the configuration file in the background, I could not read the attribute value, so I checked it online. Now I will share it with you here.

Attach the code first:



Package com.shafei.util;
import java.io.BufferedInputStream;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.InputStream;
import java.io.OutputStream in;
import java.util.Enumeration;
import java.util.Properties;
import org.apache.log4j.Logger;
public class PropertyUtil {
Private static logger record = Logger.getLogger(PropertieUtil.class);
Private PropertyUtil() {
}
/ **
*Read a certain property of the configuration file
* /
Public static string readValue (String file path, String key) {
Property props = new feature ();
Try {
//Note that the path starts with /, if not, handle it
If (filePath.startsWith("/")!)
File path = "/" + file path;
InputStream time = PropertieUtil.class.getResourceAsStream(file path);
props.load(in);
String value = props.getProperty(key);
return value;
} catch (Exception 5) {
logger.error(E);
return null;
}
}
/ **
*Print the entire contents of the configuration file (file path, configuration file name, if there is a path, props/test.properties)
* /
Public static void readProperties (String file path) {
Properties props = New Features();
Try {
//Note that the path starts with /, otherwise handle .class.getResourceAsStream(file path);
props.load(in);
enumeration EN = props.propertyNames();
//Traverse while printing
(en.hasMoreElements()) {
String key = (String) en.nextElement();
String property = props.getProperty(key);
System.out .println (property);
logger.info (key + ":" + property);
}
} catch (Exception 5) {
logger.error (E);
}
}
/ **
* will Values ​​are written to the configuration file
* /
Public static invalid writeProperties (string file name, string parameter name, string parameterValue) throws an exception {
//Special attention to local testing, if it is a Maven project, please go to the target View the file in the directory, not the source code
//Note that / cannot be added to the path, and if it is added, remove it
, if (fileName.startsWith ("/"))
fileName.substring (1);
String File path = getPath() + filename of PropertyUtil.class.getResource("/").
//Get the configuration file
Property PPS = new properties();
in InputStream = new BufferedInputStream(new FileInputStream(file path));
pps.load(in);
enclosed();
out OutputStream = new FileOutputStream (file path);
//Set configuration name and value
pps.setProperty (parameter name, parameterValue);
//Comment configuration equal to file comment
pps.store (full score, "update" + Parameter name + "name");
out.flush();
out.close();
}
public static void main(String[] args) throws Exception {
readProperties("jdbc.properties" );
logger.info(readValue("jdbc.properties", "JAVABLOG_WRITE_URL"));
// writeProperties("CONF/test.properties", "dataSource.driver", "test");
readProperties("CONF / test.properties");
}
}

I also learned the above code from the experts. It is not difficult and very practical. I hope it will be helpful to everyone!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn