应用JSP实现在线投票系统遇到的怪问题

momohah2008 2008-07-28 04:42:12
<%@ page contentType="text/html;charset=GBK" language="java" %>
<%@ page import="java.sql.*"%>
<%@ page import="java.io.*" %>
<%@ page import="java.util.*" %>
<%@ page import="java.lang.*" %>

<%
request.setCharacterEncoding("gb2312");
String classforname="com.microsoft.jdbc.sqlserver.SQLServerDriver";
String url="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=vote;user=sa;password=sa;";

String username=request.getParameter("username");
String password=request.getParameter("password");
try
{
Class.forName(classforname);
Connection con=DriverManager.getConnection(url);
Statement stmt=con.createStatement();
String isCorrect="select * from tb_user where name='"+username+"' and password='"+password+"'";
ResultSet rs=stmt.executeQuery(isCorrect);

if(!rs.next())
{
response.sendRedirect("login.html");
rs.close();
stmt.close();
con.close();
}
//如果登录用户的投票标识为0,则允许用户投票,并将标识改为1
else if(rs.getString("isCheck").equals("0"))
{
//将用户名和密码保存到session对象中
session.setAttribute("username",rs.getString("username"));
session.setAttribute("password",rs.getString("password"));
session.setAttribute("isCheck",rs.getString("isCheck"));

stmt.execute("update tb_user set isCheck='1' where username='"+username+"'");
stmt.close();
con.close();
rs.close();


response.sendRedirect("index.html");
}
else
{
response.sendRedirect("watch.html");
stmt.close();
con.close();
rs.close();
}
}
catch(Exception e)
{
e.printStackTrace();
}
response.sendRedirect("index.html");


%>

运行时报错如下,大家帮忙看下到底是哪错了啊?
java.lang.ClassNotFoundException: com.microsoft.jdbc.sqlserver.SQLServerDriver
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1332)
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1181)
at org.apache.jasper.servlet.JasperLoader.loadClass(JasperLoader.java:150)
at org.apache.jasper.servlet.JasperLoader.loadClass(JasperLoader.java:71)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:164)
at org.apache.jsp.login_jsp._jspService(org.apache.jsp.login_jsp:61)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:322)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:291)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:241)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:856)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:744)
at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
at java.lang.Thread.run(Thread.java:595)

...全文
336 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
Maytwo 2010-05-10
  • 打赏
  • 举报
回复
报错了
xuxiang19840814 2008-07-30
  • 打赏
  • 举报
回复
我也认为你的包和驱动正确吗
momohah2008 2008-07-29
  • 打赏
  • 举报
回复
首先谢谢各位了.嗯,在properties的path中add了sql包之后,又出现其他问题了,唉,我这新手,很多都不知道,有时候觉得问的问题很白痴,但为了能弄懂,也就无所谓大家怎么看了,希望大家能帮我解决下:
报错如下:
java.sql.SQLException: [Microsoft][SQLServer 2000 Driver for JDBC][SQLServer]列名 'name' 无效。
at com.microsoft.jdbc.base.BaseExceptions.createException(Unknown Source)
at com.microsoft.jdbc.base.BaseExceptions.getException(Unknown Source)
at com.microsoft.jdbc.sqlserver.tds.TDSRequest.processErrorToken(Unknown Source)
at com.microsoft.jdbc.sqlserver.tds.TDSRequest.processReplyToken(Unknown Source)
at com.microsoft.jdbc.sqlserver.tds.TDSExecuteRequest.processReplyToken(Unknown Source)
at com.microsoft.jdbc.sqlserver.tds.TDSRequest.processReply(Unknown Source)
at com.microsoft.jdbc.sqlserver.SQLServerImplStatement.getNextResultType(Unknown Source)
at com.microsoft.jdbc.base.BaseStatement.commonTransitionToState(Unknown Source)
at com.microsoft.jdbc.base.BaseStatement.postImplExecute(Unknown Source)
at com.microsoft.jdbc.base.BaseStatement.commonExecute(Unknown Source)
at com.microsoft.jdbc.base.BaseStatement.executeQueryInternal(Unknown Source)
at com.microsoft.jdbc.base.BaseStatement.executeQuery(Unknown Source)
at org.apache.jsp.login_jsp._jspService(org.apache.jsp.login_jsp:65)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:322)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:291)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:241)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:856)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:744)
at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
at java.lang.Thread.run(Thread.java:595)
我根本没有在哪有用到过"name"这个属性,我明明是从login.html中设置的name="username"并把它传给了login.jsp页面啊,怎么说name无效呢?很是困惑,请大家帮帮我
lizejia01 2008-07-29
  • 打赏
  • 举报
回复
耐心点,细心点,都能解决的。。。。
momohah2008 2008-07-29
  • 打赏
  • 举报
回复
String isCorrect="select * from tb_user where name='"+username+"' and password='"+password+"'";
name属性与数据库里的属性不一致,很是不好意思,我竟然连这种那么低级的错误也没找出来
哒哒 2008-07-28
  • 打赏
  • 举报
回复
你用的是2000的数据库连接技术
导入2000的数据库驱动就可以了
zw61911169 2008-07-28
  • 打赏
  • 举报
回复
检查sql驱动。。。。再看连接字符串是否正确。。
momohah2008 2008-07-28
  • 打赏
  • 举报
回复
加了啊,这个吧Class.forName(classforname);
numen_wlm 2008-07-28
  • 打赏
  • 举报
回复
明显的SQLServer驱动没加嘛

67,538

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧