2014-08-29 25 views
-1

//我使用template.setFetchSize(100);再次,每一次daoImpl。如何在财产档案中使用和使用如何使用jdbc模板使用属性文件

JdbcTemplate template = new JdbcTemplate(dataSource); 

    String sql = ""; 

    // process 100 rows at a time to minimize memory consumption 
    template.setFetchSize(100); 

    template.query(sql, new RowCallbackHandler() { 
    public void processRow(ResultSet rs) throws SQLException { 

});

回答

0

继DRY原则:

给出一个myjdbc.properties

fetchSize = 100 

使用一个类

public class StandardJdbcTemplate extends JdbcTemplate { 
    private static final int FETCH_SIZE = 
      ResourceBundler.get("myjdbc").getInt("fetchSize"); 
    public StandardJdbTemplate(DataSource dataSource) { 
     super(dataSource); 
     setFetchSize(FETCH_SIZE); 
    } 
} 

JdbcTemplate template = new StandardJdbcTemplate(dataSource); 

或者,您也可以使用工厂类产生一个JdbcTemplate。

public static JdbTemplate createJdbcTemplate(DataSource dataSource) { ... } 
+0

也许你认为有一个全局类与'公共静态最终int FETCH_SIZE'。就我个人而言,我不喜欢传出常量的类,因此我将它们包含在使用类中。即使不太好,也会在每个JdbcTemplate中读取ResourceBundle。 – 2014-08-29 14:58:37