/** * 读取properties文件内容,放到Dbdata对象中 * getProp * @param filePath * @return * @throws IOException * @author tf.li * @data Feb 28, 2011 */ public Dbdata getProp(String filePath) throws IOException { Dbdata dbData = new Dbdata(); Properties props = new Properties(); InputStream ips = null; ips = new BufferedInputStream(new FileInputStream(filePath)); props.load(ips); ips.close(); // 将键值逐一从property中取出 if(props.getProperty("jdbc.driverClassName") != null) { //properties文件中有内容 String url = props.getProperty("jdbc.url"); String username = props.getProperty("jdbc.username"); String password = props.getProperty("jdbc.password"); String maxActive = props.getProperty("jdbc.maxActive"); dbData.setUserName(username); dbData.setPass(password); dbData.setMaxActive(maxActive); String[] urlArr = url.split(":"); for(int i=0; i<urlArr.length; i++) { if("mysql".equalsIgnoreCase(urlArr[i])) { //数据库是mysql dbData.setDatabaseType(1); //url="jdbc:mysql://localhost:3306/ngbstzq?zeroDateTimeBehavior=convertToNull"; dbData.setUrl(urlArr[2].substring(2)); String[] portDbname = urlArr[3].split("/"); dbData.setPort(portDbname[0]); dbData.setDatabaseName(portDbname[1].split("//?")[0]); break; } else if("sqlserver".equalsIgnoreCase(urlArr[i])) { //数据库是sqlserver dbData.setDatabaseType(2); //url="jdbc:jtds:sqlserver://localhost:1433;databaseName=ngbstzq;SelectMethod=cursor"; dbData.setUrl(urlArr[3].substring(2)); String[] portDbname = urlArr[4].split(";"); dbData.setPort(portDbname[0]); dbData.setDatabaseName(portDbname[1].split("=")[1]); break; } } } return dbData; }
其中properties文件格式如下:
jdbc.driverClassName = com.mysql.jdbc.Driverjdbc.url = jdbc:mysql://localhost:3306/ngbstzq?zeroDateTimeBehavior=convertToNulljdbc.username = rootjdbc.password = 123jdbc.maxActive = 20