課程
/后端開發
/Java
/Java 分頁原理與實踐(上)
視頻里的jdbcutil有下載地址么?網上看到的都不一樣啊。
2015-12-24
源自:Java 分頁原理與實踐(上) 3-4
正在回答
package?com.imooc.page.util; import?java.io.InputStream; import?java.sql.Connection; import?java.sql.DriverManager; import?java.sql.PreparedStatement; import?java.sql.ResultSet; import?java.sql.ResultSetMetaData; import?java.sql.SQLException; import?java.util.ArrayList; import?java.util.HashMap; import?java.util.List; import?java.util.Map; import?java.util.Properties; public?class?JdbcUtil?{ //?表示定義數據庫的用戶名 private?static?String?USERNAME?; //?定義數據庫的密碼 private?static?String?PASSWORD; //?定義數據庫的驅動信息 private?static?String?DRIVER; //?定義訪問數據庫的地址 private?static?String?URL; //?定義數據庫的鏈接 private?Connection?connection; //?定義sql語句的執行對象 private?PreparedStatement?pstmt; //?定義查詢返回的結果集合 private?ResultSet?resultSet; static{ //加載數據庫配置信息,并給相關的屬性賦值 loadConfig(); } /** ?*?加載數據庫配置信息,并給相關的屬性賦值 ?*/ public?static?void?loadConfig()?{ try?{ InputStream?inStream?=?JdbcUtil.class .getResourceAsStream("/jdbc.properties"); Properties?prop?=?new?Properties(); prop.load(inStream); USERNAME?=?prop.getProperty("jdbc.username"); PASSWORD?=?prop.getProperty("jdbc.password"); DRIVER=?prop.getProperty("jdbc.driver"); URL?=?prop.getProperty("jdbc.url"); }?catch?(Exception?e)?{ throw?new?RuntimeException("讀取數據庫配置文件異常!",?e); } } public?JdbcUtil()?{ } /** ?*?獲取數據庫連接 ?*? ?*?@return?數據庫連接 ?*/ public?Connection?getConnection()?{ try?{ Class.forName(DRIVER);?//?注冊驅動 connection?=?DriverManager.getConnection(URL,?USERNAME,?PASSWORD);?//?獲取連接 }?catch?(Exception?e)?{ throw?new?RuntimeException("get?connection?error!",?e); } return?connection; } /** ?*?執行更新操作 ?*? ?*?@param?sql ?*????????????sql語句 ?*?@param?params ?*????????????執行參數 ?*?@return?執行結果 ?*?@throws?SQLException ?*/ public?boolean?updateByPreparedStatement(String?sql,?List<?>?params) throws?SQLException?{ boolean?flag?=?false; int?result?=?-1;//?表示當用戶執行添加刪除和修改的時候所影響數據庫的行數 pstmt?=?connection.prepareStatement(sql); int?index?=?1; //?填充sql語句中的占位符 if?(params?!=?null?&&?!params.isEmpty())?{ for?(int?i?=?0;?i?<?params.size();?i++)?{ pstmt.setObject(index++,?params.get(i)); } } result?=?pstmt.executeUpdate(); flag?=?result?>?0???true?:?false; return?flag; } /** ?*?執行查詢操作 ?*? ?*?@param?sql ?*????????????sql語句 ?*?@param?params ?*????????????執行參數 ?*?@return ?*?@throws?SQLException ?*/ public?List<Map<String,?Object>>?findResult(String?sql,?List<?>?params) throws?SQLException?{ List<Map<String,?Object>>?list?=?new?ArrayList<Map<String,?Object>>(); int?index?=?1; pstmt?=?connection.prepareStatement(sql); if?(params?!=?null?&&?!params.isEmpty())?{ for?(int?i?=?0;?i?<?params.size();?i++)?{ pstmt.setObject(index++,?params.get(i)); } } resultSet?=?pstmt.executeQuery(); //getMetaData()獲取結果集的所有字段的描述 ResultSetMetaData?metaData?=?resultSet.getMetaData(); //得到數據集的列數 int?cols_len?=?metaData.getColumnCount(); while?(resultSet.next())?{ Map<String,?Object>?map?=?new?HashMap<String,?Object>(); for?(int?i?=?0;?i?<?cols_len;?i++)?{ String?cols_name?=?metaData.getColumnName(i?+?1); Object?cols_value?=?resultSet.getObject(cols_name); if?(cols_value?==?null)?{ cols_value?=?""; } map.put(cols_name,?cols_value); } list.add(map); } return?list; } /** ?*?釋放資源 ?*/ public?void?releaseConn()?{ if?(resultSet?!=?null)?{ try?{ resultSet.close(); }?catch?(SQLException?e)?{ e.printStackTrace(); } } if?(pstmt?!=?null)?{ try?{ pstmt.close(); }?catch?(SQLException?e)?{ e.printStackTrace(); } } if?(connection?!=?null)?{ try?{ connection.close(); }?catch?(SQLException?e)?{ e.printStackTrace(); } } } public?static?void?main(String[]?args)?{ JdbcUtil?jdbcUtil?=?new?JdbcUtil(); jdbcUtil.getConnection(); try?{ List<Map<String,?Object>>?result?=?jdbcUtil.findResult( "select?*?from?t_student",?null); for?(Map<String,?Object>?m?:?result)?{ System.out.println(m); } }?catch?(SQLException?e)?{ e.printStackTrace(); }?finally?{ jdbcUtil.releaseConn(); } } }
同樓上
自己寫一個多好,又鍛煉了自己,還加深了印像,用起來還方便。
舉報
通過總結常見的分頁樣式,手把手帶你實現java常見的分頁功能
1 回答能提供代碼嗎
1 回答Java分頁和PHP分頁原理相同么?
2 回答分頁插件問題
1 回答hibernate分頁查詢案例
1 回答SSM框架怎么寫分頁
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網安備11010802030151號
購課補貼聯系客服咨詢優惠詳情
慕課網APP您的移動學習伙伴
掃描二維碼關注慕課網微信公眾號
2017-05-24
2016-08-22
同樓上
2015-12-24
自己寫一個多好,又鍛煉了自己,還加深了印像,用起來還方便。