日期:2014-05-18  浏览次数:20720 次

使用配置文件连接数据库时的一个小问题
我连接SQL   SERVER   2000   数据库   是写的一个java类来读取硬盘中的配置文件,问题是在此程序中,配置文件的路径是一个绝对路径,我想使用相对路径,这样就便于我开发的项目的移植.     大家看懂我说的话没有啊?
我还是把我的代码贴上来吧.

这是连接数据库的JAVA类:

package   com.qichunren.utils;

import   java.io.FileInputStream;
import   java.io.FileNotFoundException;
import   java.io.IOException;
import   java.sql.Connection;
import   java.sql.DriverManager;
import   java.sql.SQLException;
import   java.util.Properties;

//DatabaseUtil类用来取得数据库连接和释放数据库边接
public   class   DatabaseUtil   {

private   static   String   dbDriverName   =   null;//   数据库驱动程序名称

private   static   String   dbHost   =   null;//   数据库主机名或者IP地址

private   static   String   dbPort   =   null;//   数据库服务器端口号

private   static   String   dbUser   =   null;//   数据库用户名

private   static   String   dbPwd   =   null;//   数据库用户名的密码

private   static   String   dbName   =   null;//   要连接的数据库的名称

private   static   String   dbUrl   =   null;//   数据库连接地址

private   static   Connection   conn   =   null;

//   读取配置文件中的各项参数
public   static   void   loadProperties()   {
Properties   prop   =   new   Properties();
try   {
String   fileName   =   "D:\\SystemConfig.ini ";//   SystemConfig.ini是配置文件,位于D盘根目录
FileInputStream   fis   =   new   FileInputStream(fileName);
prop.load(fis);
dbDriverName   =   prop.getProperty( "DatabaseDriverName ");
dbHost   =   prop.getProperty( "DatabaseHost ");
dbPort   =   prop.getProperty( "DatabasePort ");
dbUser   =   prop.getProperty( "DatabaseUser ");
dbPwd   =   prop.getProperty( "DatabasePwd ");
dbName   =   prop.getProperty( "DatabaseName ");
dbUrl   =   "jdbc:microsoft:sqlserver:// "   +   dbHost   +   ": "   +   dbPort;
//   eg.   ddUrl:   jdbc:microsoft:sqlserver://172.16.140.102:1433
fis.close();//   读取参数完毕后,关闭文件输入流

}   catch   (FileNotFoundException   e)   {
System.out.println( "配置文件对路径不对!请检查... ");
e.printStackTrace();
}   catch   (IOException   e)   {
System.out.println( "读取配置文件时出现错误... ");
e.printStackTrace();
}
}

//   取得数据库连接
public   synchronized   static   Connection   getConn()   throws   SQLException,
ClassNotFoundException   {
loadProperties();
Class.forName(dbDriverName);