最近發現在工作中有很多代碼忘得一乾二淨 所以覺得應該把一些寫好的代碼記錄下來 其實之前有用有道筆記 但是發現它並沒有搜索功能
所以還是寫到博客中來 可以用強大的搜索引擎來找到 很方便
SELECT * FROM (select A.*,rownum rn from (select * from cms_matchingpic where keyword like '%keyword%' order by create_dt DESC) A where rownum <= (每頁條數+第一條索引)) where rn >= <pre name="code" class="sql">第一條索引
這句oracle sql語句是經過優化後的分頁查詢 效率客觀 但是如果數據量並不大 它的效率還是無法顯現出來的
SELECT * FROM gallery_image WHERE news_keyword LIKE '%keyword%' ORDER BY news_time DESC limit 第一條索引,每頁條數
上面這句是mysql數據庫 分頁查詢語句 與oracle區別很大 public List<Map<String,Object>> getDBData(String driverName,String url,String user,String password,String sql) throws Exception{
//獲取歷史圖庫中的數據
Connection conn = null;
Statement stat = null;
ResultSet rs = null;
//加載驅動器
try{
Class.forName(driverName).newInstance();
}catch(Exception e){
//TODO
}
//根據數據庫參數得到數據庫連接
conn = DriverManager.getConnection(url,user , password);
if ("oracle.jdbc.driver.OracleDriver".equals(driverName)) {
PreparedStatement stmt=conn.prepareStatement(sql);
rs = stmt.executeQuery();
}
if("com.mysql.jdbc.Driver".equals(driverName)){
stat = conn.createStatement();
rs = stat.executeQuery(sql);
}
return extractData(rs);
}
附上 jdbc獲取連接並返回list 結果集的封裝方法