在DAO中读取jdbc.properties中的值使用

在DAO中读取jdbc.properties进行数据库连接,这个一般不会用到,因为使用SSH,SpringMVC都可以在applicationContext.xml中进行数据持久化和业务逻辑配置等。并且即使使用最简单的直接在DAO中写入了数据库的加载。所以这种情况极其难用到,但是我还是用到,项目太老,太乱,没有办法,记录一下。
首先存在jdbc.properties配置文件,里面代码如下:

jdbc.driverClassName=com.mysql.jdbc.Driver
jdbc.url=jdbc\:mysql\://127.0.0.1\:3306/databaseName?useUnicode\=true&characterEncoding\=utf8&zeroDateTimeBehavior\=convertToNull
jdbc.username=root
jdbc.password=root

想要获取这里面的信息进行数据库的读取。
代码如下:


public class NeGroupStrategy{
public int selectLink(String neName) throws Exception {

        Properties prop = new Properties();
        prop.load(NeGroupStrategy.class.getResourceAsStream("/WEB-INF/jdbc.properties"));
        Class.forName(prop.getProperty("jdbc.driverClassName"));


        Connection conn = null;   
        Statement stmt = null;   
        int heartbeatflag = 0;

        String DBURL = prop.getProperty("jdbc.url");
        String USERNAME = prop.getProperty("jdbc.username");
        String PASSWORD = prop.getProperty("jdbc.password");
        conn = DriverManager.getConnection(DBURL,USERNAME,PASSWORD);


        String sql = "SELECT heartbeatflag FROM linkobserve WHERE netype = '"+neName+"'";
        stmt = conn.createStatement();   
        ResultSet rs = stmt.executeQuery(sql);  
        while(rs.next()) {  
            heartbeatflag = Integer.parseInt(rs.getString("heartbeatflag"));
        }
        stmt.close();   
        conn.close(); 

        return heartbeatflag;

    }

}

这样就可以了。

你可能感兴趣的:(java,DAO,jdbc)