我是靠谱客的博主 善良裙子,最近开发中收集的这篇文章主要介绍java 数据库配置文件_web 工程读取数据库配置文件的方法,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

首先在web工程src目录下新建一个database.properties 文件

内容如下:

user=root

password=root

databaseType=com.mysql.jdbc.Driver

url=jdbc:mysql://192.168.2.232:3306/oa? seUnicode=true&characterEncoding=UTF8&zeroDateTimeBehavior=convertToNull

这里的内容随自己的合适而变化,这里不多说了;

在新建一个读取.properties文件新类:

package com.junhai.tamsys.util;

import java.io.FileInputStream;

import java.io.FileNotFoundException;

import java.io.FileOutputStream;

import java.io.IOException;

import java.util.Properties;

public class DatabaseConfigure {

private Properties property;

private FileInputStream inputFile;

private FileOutputStream outputFile;

public DatabaseConfigure() {

property = new Properties();

}

public DatabaseConfigure(String filePath) {

property = new Properties();

try {

inputFile = new FileInputStream(filePath);

property.load(inputFile);

inputFile.close();

} catch (FileNotFoundException e) {

System.out.println("读取属性文件--->失败!- 原因:文件路径错误或者文件不存在");

e.printStackTrace();

} catch (IOException e) {

e.printStackTrace();

}

}

/*

* 重载函数,得到key的值 @param key 取得其值的键 @return key的值

*/

public String getValue(String key) {

if (property.containsKey(key)) {

return property.getProperty(key);

} else

return "";

}

/*

* 重载函数,得到key的值

*

* @param fileName propertys文件的路径+文件名 @param key 取得其值的键 @return key的值

*/

public String getValue(String fileName, String key) {

try {

String value = "";

inputFile = new FileInputStream(fileName);

property.load(inputFile);

inputFile.close();

if (property.containsKey(key)) {

value = property.getProperty(key);

return value;

} else

return value;

} catch (FileNotFoundException e) {

e.printStackTrace();

return "";

} catch (IOException e) {

e.printStackTrace();

return "";

} catch (Exception ex) {

ex.printStackTrace();

return "";

}

}

/*

* 清除properties文件中所有的key和其值

*/

public void clear() {

property.clear();

}

/*

* 改变或添加一个key的值,当key存在于properties文件中时该key的值被value所代替, 当key不存在时,该key的值是value

* @param key 要存入的键 @param value 要存入的值

*/

public void setValue(String key, String value) {

property.setProperty(key, value);

}

/*

* 将更改后的文件数据存入指定的文件中,该文件可以事先不存在。 @param fileName 文件路径+文件名称 @param

* description 对该文件的描述

*/

public void saveFile(String fileName, String description) {

try {

outputFile = new FileOutputStream(fileName);

property.store(outputFile, description);

outputFile.close();

} catch (FileNotFoundException e) {

e.printStackTrace();

} catch (IOException ioe) {

ioe.printStackTrace();

}

}

public static void main(String[] args) {

DatabaseConfigure test=new DatabaseConfigure("./src/database.properties");

System.out.println(test.getValue("user"));

System.out.println(test.getValue("databaseType")+";"+test.getValue("url"));

}

}

这样就可以通过key得到相应的value了;

想在这里多说一点是路径问题,java工程和web 工程读取.properties路径是不一样的,我在这里就花了不少时间。

JAVA工程: DatabaseConfigure test=new DatabaseConfigure("./src/database.properties");这样读取就可以了:

web工程这样读取:DatabaseConfigure  dc = new DatabaseConfigure(Thread.currentThread().getContextClassLoader()

.getResource("").getPath()+"database.properties");

因为当服务器启动后工程里面东西会编译后加到WEB-INFclasses这个目录,服务也是从这个目录下读取信息的。所以先取到这个路径,才能正确读取到database.properties这里边的内容。

最后

以上就是善良裙子为你收集整理的java 数据库配置文件_web 工程读取数据库配置文件的方法的全部内容,希望文章能够帮你解决java 数据库配置文件_web 工程读取数据库配置文件的方法所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(35)

评论列表共有 0 条评论

立即
投稿
返回
顶部