本文來自程式先鋒網站:www.javabiz.cn Jaguar 提供了一個很是有用的緩存機制來提供數據庫訪問速度。能夠根據這個緩存機制來緩存ODBC,JDBC或者Oracle的鏈接。 注意:java組件不能使用緩存ODBC鏈接,只能緩存JDBC鏈接,若是實在沒有JDBC驅動的話, 也能夠勉強使用由SUN公司提供的ODBC-JDBC,這種橋的性能不好,並且在多線程的應用系統中可靠性不好。 要想定義一個緩存的ODBC-JDBC(橋)鏈接,能夠按照下面的步驟: 經過ODBC管理面板設置,定義一個普通的系統數據源(DSN) 在 jaguar 裏面定義緩存 : General Tab : Server name = jdbc:odbc:YourSystemDSNName with user/pwd Driver Tab : DLL 或者類名 name = sun.jdbc.odbc.JdbcOdbcDriver jdbc radio要選中 Cache Tab : 選中名稱相對應的checkbox <%@page contentType="text/html"%> <html> <head><title>JSP Page</title></head> <body> <%@ page import="java.sql.*" %> <% com.sybase.jaguar.jcm.JCMCache jcmCache= null; java.sql.Connection dbConn = null; String jcmCacheString = "mycachename"; String msg = ""; try { jcmCache = com.sybase.jaguar.jcm.JCM.getCacheByName(jcmCacheString); dbConn = jcmCache.getConnection(com.sybase.jaguar.jcm.JCMCache.JCM_WAIT); Statement stmt = dbConn.createStatement(); ResultSet rs = stmt.executeQuery ("select msg from messages where msgid='00001'"); if(rs != null) { while(rs.next()) { msg = rs.getString("msg"); } } rs.close(); dbConn.close(); } catch (Exception e) { out.println("OUPS " + e.getMessage() + "<BR>"); } %> msgtext = <i><%= msg %></i> </body> </html> 不要把緩存的名字硬編碼到你的組件中,讓這個名字放在WEB應用環境變量中是個不錯的選擇,這種方法使得系統維護和更新起來要更容易一些。 這個例子裏面, myconnection 包括了所使用緩存的名稱. javax.naming.InitialContext ctx = new javax.naming.InitialContext(); javax.sql.DataSource ds = (javax.sql.DataSource) ctx.lookup("java:comp/env/jdbc/myconnection"); java.sql.Connection con = ds.getConnection(); java.sql.PreparedStatement stmt = con.prepareStatement(sql); java.sql.ResultSet rs = stmt.executeQuery(); while (rs.next()) { //do something } 總結,本文把使用Jaguar 使用緩存ODBC的鏈接方式使用作了一個示例,僅供各位參考,歡迎指教。