在JSP中使用 Microsoft JDBC Driver 连接SQL Server2000

 

本来这个问题是老问题了,但是,查了网上的中文资料,实在是...,要么是讲得不清楚,要不就是环节有问题,CSDN论坛中细细翻阅FAQ中讲得只是JSP代码连接SQL Server,及略带讲述必须安装Microsoft JDBC驱动,只好细细翻阅CSDN论坛贴子,并亲自操刀实践了多次,现总结如下:

情况比想象中的要坏得多:调了一个多小时,终于连接到SQL Server2000,很恼火啊,呵呵!1. 安装Microsoft JDBC Driver勿庸多言,按“下一步”完成安装。

2. 配置先讲一下环境变量的作用:

JAVA_HOME变量:用于设定JAVA开发包所在目录TOMCAT_HOME变量:用于设定TOMCAT伺服器所在目录

CLASSPATH变量:被编译的java或jsp文件中import一些类库(如java.io.*, java.lang.*等),当编译程序javac.exe编译java或jsp文件时,必须要知道这些类库所在路径。所以,CLASSPATH是用于设定java类库的搜索路径,通常需要在CLASSPATH中设置值: %JAVA_HOME%/lib。当安装完Microsoft JDBC Driver后,还需要加入: %JDBC_INSTALL_PATH%/lib/msbase.jar;%JDBC_INSTALL_PATH%/lib/mssqlserver.jar;%JDBC_INSTALL_PATH%/msutil.jar注意:%JDBC_INSTALL_PATH%是安装Microsoft JDBC Driver的目录,例如,设置这个环境变量JDBC_INSTALL_PATH = "c:/program files/microsoft jdbc driver"

path变量: 用于设置java.exe(执行已编译后的class), javac.exe(编译java文件为class)等执行文件的路径, 例如,可以在dos控制台下直接键入javac.exe,而不用切换到javac.exe所在目录再执行javac.exe。

3. 要点一定要记得在安装完成Microsoft JDBC后,将安装目录中的lib目录下三个jar文件:msbase.jar, mssqlserver.jar, msutil.jar拷贝到Tomcat目录下common/lib目录下,之后,必须重新启动Tomcat!这样做的目的是,jsp页面在编译过程中不会出现找不到sql server driver类库的问题.

但我实在是不明白:%JAVA_HOME%/lib已被设置为默认的库路径,当我把Microsoft JDBC Driver的三个jar文件:msbase.jar,mssqlserver.jar,msutil.jar拷贝到%JAVA_HOME%lib中后(%JAVA_HOME%/jre/lib也作了测试,并且设置了相应的CLASSPATH,结果一样),然后运行jsp页面,却还仍然提示找不到驱动程序类库。难道,TOMCAT只识别自已的common/lib目录下的类库?

4. 连接SQL Server 2000的JSP代码<%@ page import="java.lang.*, java.io.*, java.sql.*, java.util.*" contentType="text/html; charset=EUC_CN" %><html>

<body>

<%

   Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver").newInstance();

   String url="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=OA"; // OA是数据库名称

   String user="sa";

   String password="";

   Connection conn= DriverManager.getConnection(url,user,password);

   Statement stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);

   String sql="select * from MEMBERS_INFO"; // MEMBERS_INFO是表名

   ResultSet rs=stmt.executeQuery(sql);

   while(rs.next())

   {

%>

       您的第一个字段内容为:<%=rs.getString(1)%>

       您的第二个字段内容为:<%=rs.getString(2)%>

<%

   }

%>

<%out.print("数据库操作成功,恭喜你");%>

<%

   rs.close();

   stmt.close();

   conn.close();

%>

</body>

</html>

你可能感兴趣的:(java,sql,tomcat,jsp,jdbc,server,Microsoft)