解決JSP網站開發中的驅動沖突問題
網絡上熱心人總結了JSP網站開發中微軟驅動的缺點:
(1)如果采用jdbc-odbc驅動,那么就必須按照查詢順序來一次讀取(不論有沒有image或text類型)
(2)如果采用微軟提供的ms sql server jdbc driver,如果查詢語句中,不存在image或text類型字段,那么可以按照無序獲取
(3)如果采用微軟提供的ms sql server jdbc driver,如果查詢語句中,存在image或text類型字段,那么就必須按照順序讀取,否則就會報告Driver]ResultSet can not re-read row data for column之類的錯誤
(4)如果想不查詢語句中有沒有image或text類型字段,都可以不按照順序獲取,或重復獲取。那么就必須更換驅動,改用第三方的。
解決方法:
下載JDTS驅動(支持SQL6.5,7.0,2000,2005,SYBASE) 下載地址:http://jtds.sourceforge.net/
下載解壓后找到jtds-1.2.2.jar,放到 JSP項目 WEB-INF/lib目錄下
數據庫連接文件DbConn.java
- package com.database;
- import java.sql.*;
- public class DbConn {
- //private static String driverName ="com.microsoft.jdbc.sqlserver.SQLServerDriver";
- //private static String dbURL="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=jsp";
- //原來的連接,jsp是數據庫文件 http://www.dwww.cn
- private static String driverName ="net.sourceforge.jtds.jdbc.Driver";
- private static String dbURL="jdbc:jtds:sqlserver://localhost:1433/jsp";
- private String userName="dwww";
- private String userPwd="dwww";
- public Connection dbConn=null;
- public synchronized Connection getConnection()
- {
- try
- {
- Class.forName(driverName).newInstance();
- dbConn=DriverManager.getConnection(dbURL, userName, userPwd);
- if(dbConn!=null)
- return dbConn;
- }
- catch(Exception e)
- {
- e.printStackTrace();
- return null;
- }
- return null;
- }
- }
Ok,JSP網站開發中的驅動沖突問題解決。
【編輯推薦】