用登录界面总结jsp基本语法
2013-10-25 16:59
288 查看
jsp是html语言和java语言的结合,但是一般在jsp中写的java代码很少,往往只有几行,这是是由于在jsp写过多的java代码易发生错误,所以在jsp上实现用户登录很不实际,但是这里为了总结jsp的基本语法,登录界面相当有用。
登录界面由4个界面组成,一个登录界面(login.html),一个检验信息界面(check.jsp),一个登录成功界面(success.jsp),一个登录失败界面(failure.jsp),其中check.jsp是核心,它并不显示出来,但是承担连接数据库,检验信息,并根据登录信息是否匹配决定往success.jsp和failure.jsp中哪个界面跳转。
下面是代码
login.html
check.jsp
success.jsp
failure.jsp
登录界面由4个界面组成,一个登录界面(login.html),一个检验信息界面(check.jsp),一个登录成功界面(success.jsp),一个登录失败界面(failure.jsp),其中check.jsp是核心,它并不显示出来,但是承担连接数据库,检验信息,并根据登录信息是否匹配决定往success.jsp和failure.jsp中哪个界面跳转。
下面是代码
login.html
<!DOCTYPE html> <!-- Author:zhangshufeng --> <!-- Date:2013/10/23 --> <html> <head> <meta charset="UTF-8"> <title>登录界面</title> <script type="text/javascript"> function validate(f) { if (!(/^\w{5,10}$/.test(f.userid.value))) { alert("用户名长度为5-10位");//弹出对话框说明输入的用户名长度错误 f.userid.focus();//将焦点设置在userid的输入框中,即当输入userid失败的时候会在默认在userid框中输入 return false; } //设置输入检查:用户名长度和密码长度都要为5-10位 if (!(/^\w{5,10}$/.test(f.password.value))) { alert("密码长度为5-10位"); f.password.focus(); return false; } return true; } </script> </head> <body> <form action="check.jsp" method="post" onSubmit="return validate(this)"> <!--onSubmit属性值确定是否向check.jsp发送消息--> <table > <tr> <td><h1>登录界面</h1> <td> </tr> <tr> <td>用户名:</td> <td><input type="text" name="userid" /></td> </tr> <tr> <td>密 码:</td> <!-- 是为了让格式好看 --> <td><input type="text" name="password" /></td> </tr> <tr> <td><input type="submit" value="登录" /></td> </tr> </table> </form> </body> </html>
check.jsp
<!-- @author:zhangshufeng --> <!-- Date:2013/10/23 --> <%@page import="com.sun.xml.internal.ws.api.addressing.WSEndpointReference.Metadata"%> <%@page import="java.sql.*,java.util.*"%> <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>LoginCheck</title> </head> <body> <%!public static String DriverName = "com.mysql.jdbc.Driver"; public static String DBURL = "jdbc:mysql://localhost:3306/userRecord"; public static String tableName = "tuser"; public static String DBUser = "root"; public static String DBPwd = "18157143347"; /*定义了关于数据库的一系列常量,比如想要连接的数据库的地址和连接权限(用户名和密码)*/ %> <% Boolean flag = false;//flag值表示用户输入是否正确 Connection conn = null; String userid = request.getParameter("userid"); String password = request.getParameter("password"); System.out.println("userid:" + userid + ",password:" + password); String sql = "select username from tuser where userid=? and userpwd=?"; /*这是定义输入语句的标准格式,?部分可以用sql.setDataType(number,content),DataType 表示?表示的数据类型,比如String,number表示问号的次序,1表示第一个?的位置,如下所示*/ %> <% try { Class.forName(DriverName); conn = DriverManager.getConnection(DBURL, DBUser, DBPwd); PreparedStatement pf = conn.prepareStatement(sql); pf.setString(1, userid); pf.setString(2, password); ResultSet result = pf.executeQuery(); /*上述代码用来连接数据库以及从数据库的指定表搜索满足要求的数据, 用ResultSet记录搜索结果*/ if (!result.next()) { flag = false; } else { flag = true; } /*通过检验result中是否为空来设置flag的值*/ } catch (Exception ex) { ex.printStackTrace(); } %> <% try { conn.close(); } catch (Exception ex) { ex.printStackTrace(); } %> <% if (flag) { %> <jsp:forward page="success.jsp" /> <% } %> <% if (!flag) { %> <jsp:forward page="failure.jsp" /> <% } %> <!--根据flag的值决定往那个界面跳转,若成功跳转向"success.jsp",若 若失败跳转向"failure.jsp" --> </body> </html>
success.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>SuccessPage</title> </head> <body> <p>登录成功</p> </body> </html>
failure.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>FailurePage</title> </head> <body> <p>密码或用户名错误</p> <a href="login.html">请重新登录</a> </body> </html>
相关文章推荐
- jsp基本语法总结
- JSP基本语法总结【1】(jsp工作原理,脚本元素,指令元素,动作元素)
- jsp基本语法总结
- JSP 基本语法总结
- jsp基本语法总结
- jsp基本语法总结
- jsp基本语法总结
- JSP基本语法总结【2】九大内置对象
- java web学习心得与总结(1)——jsp基本语法
- JavaWeb基础之一JSP语法(二) JSP基本语法(2)
- iOS转前端之JS基本语法总结
- 【学习摘记】马士兵Servlet&JSP_课时20_JSP基本语法_1——声明、注释、程序代码段、表达式
- JSP的介绍和基本语法
- Android基础学习总结(六)——TextInputLayout+EditText 轻松实现登录界面
- JSP基本语法
- JAVA基础总结-基本语法
- javaweb学习总结(二十二)——基于Servlet+JSP+JavaBean开发模式的用户登录注册
- ssh登录的件等界面,,对于css,jsp不熟的人有用
- JSP入门教程之基本语法简析
- 黑马程序员_ios基础总结3_C语言基本语法二