登录页面:
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<table>
<tr>
<td>用户名</td>
<td><input type="text" name="username" /></td>
<td>密码</td>
<td><input type="password" name="password" /></td>
</tr>
<tr>
<td colspan="2"><input type="submit" value="登陆"></td>
<td>
<input type="button" value="注册" onclick="window.location.href='register.jsp';"/>
</td>
</table>
</form>
检查页面:
<%@ page language="java" import="java.util.*" page contentType="text/html; charset=GB2312"%>
<%@page import="java.sql.*" %>
<%@page import="java.io.*" %>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
JSP_JDBC_DEMO
<%
Connection conn=null;
Statement stmt=null;
ResultSet res=null;
boolean flag=false;//通过数据库匹配标识
String name_checked=null;//检查通过的用户名
%>
<%
try{
Class.forName("com.mysql.jdbc.Driver"); //加载驱动器
DriverManager.registerDriver(new com.mysql.jdbc.Driver()); //注册mysql驱动器
String dbURL="jdbc:mysql://localhost:3306/test";
String dbUser="root";
String dbPwd="5438027";
conn=java.sql.DriverManager.getConnection(dbURL,dbUser,dbPwd); //建立数据库连接
stmt=conn.createStatement();
String u=request.getParameter("username"); //从上级页面获得用户名
String p=request.getParameter("userpassword"); //从上级页面获得密码
String sql="SELECT name FROM pass WHERE ACCOUNT=u AND PASSWORD=p";//组装sql语句
System.out.println(sql);//执行上述sql语句
res=stmt.executeQuery(sql);
if(true==res.next())//只有查询得到结果才可进入循环
{
flag=true;
name_checked=res.getString(1);//获得查询出的用户
%>
<h3>Debug_数据库查询结果<%=name_checked %></h3>
<%
}
}catch(Exception e){
System.out.println(e);
}finally{
//关闭连接
try{
/* res.close();//依次关闭
stmt.close();
conn.close(); */
/* res.close();
stmt.close();
conn.close(); */
}catch(Exception e)
{
}
}
%>
<!-- 根据状态跳转 -->
<%
if(true==flag)//登陆成功
{
%>
<jsp:forward page="loginsucess.jsp">
<%
}
else//登陆失败
{
%>
<jsp:forward page="loginfail.jsp">
<%
}
%>
数据库里定义的是ACCOUNT 和PASSWORD
每次运行都会出现如下结果
HTTP Status 500 - /dologin.jsp (line: 1, column: 53) equal symbol expected
type Exception report
message /dologin.jsp (line: 1, column: 53) equal symbol expected
description The server encountered an internal error that prevented it from fulfilling this request.
exception
org.apache.jasper.JasperException: /dologin.jsp (line: 1, column: 53) equal symbol expected
org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:42)
org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:408)
org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:89)
org.apache.jasper.compiler.Parser.parseAttribute(Parser.java:217)
org.apache.jasper.compiler.Parser.parseAttributes(Parser.java:162)
org.apache.jasper.compiler.Parser.parseAttributes(Parser.java:183)
org.apache.jasper.compiler.ParserController.getPageEncodingForJspSyntax(ParserController.java:479)
org.apache.jasper.compiler.ParserController.determineSyntaxAndEncoding(ParserController.java:420)
org.apache.jasper.compiler.ParserController.doParse(ParserController.java:190)
org.apache.jasper.compiler.ParserController.parseDirectives(ParserController.java:119)
org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:193)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:373)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:353)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:340)
org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:646)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:357)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:390)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:334)
javax.servlet.http.HttpServlet.service(HttpServlet.java:722