使用一个JSP中的connection 缓存

本文来自程式先锋网站: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的链接方式使用作了一个示例,仅供各位参考,欢迎指教。
相关文章
相关标签/搜索