最近在学习jsp中数据库的使用,好长时间一直连接不上。操作系统:windows 2000数据库:SQL 2000Tomcat版本:tomcat6.0环境变量的配置:JAVA_HOME:C:\Program Files\Java CATALINA_BASE:C:\Program Files\Apache Software Foundation\Tomcat 6.0 CATALINA_HOME:C:\Program Files\Apache Software Foundation\Tomcat 6.0 CLASSPATH:C:\Program Files\Java\bin;.;C:\Program Files\Java\lib;C:\Program Files\Java\lib\dt.jar;C:\Program Files\Java\lib\tools.jar;C:\Program Files\Apache Software Foundation\Tomcat 6.0\lib\servlet-api.jar;C:\Program Files\Microsoft SQL Server 2000 Driver for JDBC\lib\msbase.jar;C:\Program Files\Microsoft SQL Server 2000 Driver for JDBC\lib\mssqlserver.jar;C:\Program Files\Microsoft SQL Server 2000 Driver for JDBC\lib\msutil.jar; PATH:C:\Program Files\Java\jdk1.5.0\bin;SQL2000驱动拷到lib目录下测试代码:<%@ page contentType="text/html;charset=gb2312" %>
<%@ page import="java.lang.*, java.io.*, java.sql.*, java.util.*"%>
<html>
<body>
<% Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver").newInstance();
 String url="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=pubs";
 //pubs 为你的数据库的
 String user="sa";
 String password="sa";
 Connection conn= DriverManager.getConnection(url,user,password);
 Statement stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
 String sql="select job_id,job_desc from jobs";
 ResultSet rs=stmt.executeQuery(sql);
 while(rs.next()) { %>
您的第一个字段内容为:<%=rs.getString(1)%><br>
您的第二个字段内容为:<%=rs.getString(2)%><br>
<% } %>
<% out.print("数据库操作成功,恭喜你"); %>
<% rs.close();
 stmt.close();
 conn.close();
%>
</body>
</html>提示错误如下:type Exception reportmessagedescription The server encountered an internal error () that prevented it from fulfilling this request.exceptionorg.apache.jasper.JasperException: /sql_test.jsp(1,1) Unterminated &lt;%@ page tag
        org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:40)
        org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:407)
        org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:132)
        org.apache.jasper.compiler.Parser.parseDirective(Parser.java:504)
        org.apache.jasper.compiler.Parser.parseElements(Parser.java:1426)
        org.apache.jasper.compiler.Parser.parse(Parser.java:133)
        org.apache.jasper.compiler.ParserController.doParse(ParserController.java:215)
        org.apache.jasper.compiler.ParserController.parse(ParserController.java:102)
        org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:167)
        org.apache.jasper.compiler.Compiler.compile(Compiler.java:306)
        org.apache.jasper.compiler.Compiler.compile(Compiler.java:286)
        org.apache.jasper.compiler.Compiler.compile(Compiler.java:273)
        org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566)
        org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:308)
        org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320)
        org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266)
        javax.servlet.http.HttpServlet.service(HttpServlet.java:803) note The full stack trace of the root cause is available in the Apache Tomcat/6.0.10 logs. 哪位大侠能帮忙,不胜感激
 
 

解决方案 »

  1.   

    <%@ page contentType="text/html;charset=gb2312" %> 
    <%@ page import="java.lang.*, java.io.*, java.sql.*, java.util.*"%> 似乎是这里有些错误
      

  2.   

    Unterminated &lt;%@ page tagpage 不匹配
      

  3.   

    你是不是引用了其它的页面,或者是其它页面引用 了本页面,如果是这样可能是
    <@page 在两个页面之间 有冲突了,
      

  4.   

    <%@ page contentType="text/html;charset=gb2312" %> 
    <%@ page import="java.lang.*, java.io.*, java.sql.*, java.util.*"%> 不要写两个<%@page%>
    写成一个就好了
    <%@ page contentType="text/html;charset=gb2312" import="java.lang.*, java.io.*, java.sql.*, java.util.*;"%> 
      

  5.   

    SQL server 2000需要打SP4补丁
      

  6.   

    把你的两句
    <%@ page contentType="text/html;charset=gb2312" %>
    <%@ page import="java.lang.*, java.io.*, java.sql.*, java.util.*"%>改为一句  
    <%@ page language="java" import="java.util.*,java.io.*,java.sql.*,java.util.*" pageEncoding="gb2312" contentType="text/html; charset=gb2312"%>但愿对你有用。 
      

  7.   

    我晕 JSP页面上调用数据库连接。
    JavaBean那么好用的东西不用。。
      

  8.   

    sqlserver2000需要打sp4的补丁
    如果不打补丁累死你也连不上的 
      

  9.   

    错误提示很清晰了嘛,如果按照错误提示来看,
    错误提示:Unterminated  &lt;%@  page  tag 
    说你写的 HTML code<@ page
    被IDE保存成了 HTML code&lt;%@ page
    然后无法解析标签
      

  10.   

    只保留第一行,再运行,如果还出现相同的问题,请检查你的IDE保存文件时的编码方式
      

  11.   

    连接sql server2000必须打补丁
      

  12.   

    把sql server的三个驱动包放在工程Web目录的WEB-INF/lib目录下,或者引入工程包中,建议使用第一种
      

  13.   

    编程中强烈建议使用try、catch,这样可以知道到底是哪一步出现了问题。
    比如
    try{
    Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver").newInstance(); }
    catch(Exception e)
    {System.out.println("没有连上1")}
     String url="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=pubs"; 
     //pubs 为你的数据库的 
     String user="sa"; 
     String password="sa"; 
    try{
     Connection conn= DriverManager.getConnection(url,user,password); }
    catch(Exception e)
    {System.out.println("没有连上2")}
    ……
    这样,看到出现的提示,就能知道哪里出问题了。当然,你是在jsp下面的,那么可以使用out对象在页面中显示了。
    这是调试的时候使用的,到正式使用的时候,可以把这些提示注释掉。
      

  14.   

    把import="" 里面的空格去了
      

  15.   

    把<%@ page import="java.lang.*, java.io.*, java.sql.*, java.util.*"%> 
    中的import的 逗号后面的空格都去了。
      

  16.   

    下面这行有问题,你有没有引入其他页面
    <%@ page contentType="text/html;charset=gb2312" %> 
      

  17.   

    可以把连接数据代码放到tomcat的配置文件中去阿!要不然太混乱了!
      

  18.   

    <%@ page contentType="text/html;charset=gb2312" %> 
    <%@ page import="java.lang.*, java.io.*, java.sql.*, java.util.*"%> 
    应该是这个问题
      

  19.   

    第一次见在jsp里面这样干的。
    从错误信息来看,应该是jsp编译的时候出的错,tag不匹配。仔细检查一下你的tag
      

  20.   

    jsp编译出错了吧,是不是你用文本编辑器保存时出现错误了啊
    简易重新检查jsp
      

  21.   

    我遇见过和你一样的问题,是sql server版本低的问题,打补丁到sp3就能通过。
      

  22.   


    属于什么性质的错误可以解释下吗? thanks!
      

  23.   

    个人觉得你java_home的配置有问题,需要配置的应该是jdk吧,你那个C:\Program Files\Java 应该改成jdk安装的目录
      

  24.   

    又看了哈你的配置,class_path也配置错了哈,开始时少了个.中间多了个.
      

  25.   

    我没注意你的页面,你要直连数据库的话,还需要添加一个mssqlserver.jar文件哈。
    你重新建个jsp页面,把你的页面粘到新建的页面上,第一句不要粘哈。再看哈!