日期:2014-05-18  浏览次数:20751 次

初学JSP,遇到连接sql数据问题,请各位大哥帮帮忙,小弟先谢谢了!
小弟是学JSP的新手,现在遇到一个JSP连接SQL Server 2000的问题。请各位大哥帮帮忙!

Windows的操作系统,Tomcat、JDK和jdbc驱动安装路径如下:
  D:\j2sdk
  D:\Tomcat 5.0
  C:\Program Files\Microsoft SQL Server 2000 Driver for JDBC

设置虚拟路径为D:\jsp 配置好环境变量后,测试一个JSP页面

  http://localhost:8080/jsp/firstjsp.jsp (没有连接数据的JSP页面)

测试成功!


按照资料上的方法

将C:\Program Files\Microsoft SQL Server 2000 Driver for JDBC中的lib目录下三个jar文件:
  msbase.jar,mssqlserver.jar,msutil.jar
拷贝到Tomcat 5.0目录下common\lib目录下,

之后,修改环境变量中的CLASSPATH,
把SQL Server 2000 For JDBC 驱动程序安装目录下的
  C:\Program Files\SQLDriverForJDBC\lib\msbase.jar;
  C:\Program Files\SQLDriverForJDBC\lib\mssqlserver.jar;
  C:\Program Files\SQLDriverForJDBC\lib\msutil.jar;
追加到CLASSPATH中去


要连接的SQL Server 2000中数据库是testDatabase,数据库中的表是userTable

连接数据库的JSP页面如下:

---------------------selectuserTable.jsp---------------------------

<%@ page contentType="text/html;charset=GB2312" %>
<%@ page import="java.sql.*" %>

<HTML>

<BODY>
 <% Connection con;
  Statement sql; 
  ResultSet rs;

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

  con=DriverManager.getConnection("jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=testDatabase","sa","12345");
  sql=con.createStatement();
  rs=sql.executeQuery("select * from userTable");

  out.print("<Table Border>");
  out.print("<TR><td colspan=8 align=center>用户数据</td></tr>");  
  out.print("<TR>");
  out.print("<Td width=100 >"+"用户ID号");
  out.print("<Td width=50 >"+"用户名");
  out.print("<Td width=100>"+"用户真实姓名");
  out.print("<Td width=50>"+"年龄");
  out.print("<Td width=50>"+"性别");
  out.print("<Td width=100>"+"联系地址");
  out.print("<Td width=100>"+"联系电话");
  out.print("<Td width=100>"+"添加时间");
  out.print("</TR>");

  while(rs.next())
  { out.print("<TR>");
  out.print("<TD >"+rs.getLong(1)+"</TD>");
  out.print("<TD >"+rs.getString(2)+"</TD>"); 
  out.print("<TD >"+rs.getString(4)+"</TD>");
  out.print("<TD >"+rs.getInt("user_age")+"</TD>"); 
  out.print("<TD >"+rs.getString("user_sex")+"</TD>");
  out.print("<TD >"+rs.getString("user_address")+"</TD>");
  out.print("<TD >"+rs.getString("user_telephone")+"</TD>");
  out.print("<TD >"+rs.getString("add_time")+"</TD>");
  out.print("</TR>") ; 
  }
  out.print("</Table>");
  con.close();
 %>
</BODY>
</HTML>

-----------------------------

在地址栏中输入:

  http://localhost:8080/jsp/selectuserTable.jsp


出错页面显示为: