login.jsp
<%@ 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">
<html>
<head>
<base href="<%=basePath%>"> <title>My JSP 'index.jsp' starting page</title>
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">
<!--
<link rel="stylesheet" type="text/css" href="styles.css">
-->
<style type="text/css">
body{font-size:16px;}
</style>
<script type="text/javascript">
function mycheck(){
if(form1.userName.value==""){
alert("用户名不能为空,请输入用户名");
form1.userName.focuse();
return;
}
if(form1.password.value==""){
alert("密码不能为空,请输入密码");
form1.password.focus();
return;
}
if(form1.validationCode.value==""){
alert("验证码不能为空,请输入验证码");
form1.validationCode.focus();
return;
}
if(form1.validationCode.value!=form1.validationCode1.value){
alert("请输入正确的验证码");
form1.validationCode.focus();
return;
}
form1.submit1();
}
</script>
</head> <body>
<form action="logincheck.jsp" name="form1" method="post">
用户名:<input type="text" name="userName" size="16"><br>
密&nbsp;&nbsp;&nbsp;&nbsp;码:
<input type="password" name="password" size="18"><br>
验证码:<input type="text" name="validationCode"
onkeyDown="if(event.keyCode==13){form1.submit.focus();}" size=6>
<%
int intmethod1 = (int)(((Math.random())*11)-1);
int intmethod2 = (int)(((Math.random())*11)-1);
int intmethod3 = (int)(((Math.random())*11)-1);
int intmethod4 = (int)(((Math.random())*11)-1);
//将的到的随机数进行连接
String intsum = ""+intmethod1+intmethod2+intmethod3+intmethod4;
%>
<!--设置隐藏域验证比较时使用 -->
<input type="hidden" name="validationCode1" value="<%=intsum%>">
<input type="text" value="<%=intsum%>" size=5> <br>
<input type="submit" name="submit1" value="登录" onClick="mycheck()">
&nbsp;
<input type="reset" value="重置">
</form> <br>
</body>
</html>
logincheck.jsp
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<html>
<head>
<title>处理登录页面的数据</title>
</head>
<body bgcolor="pink">
<%
//设置请求的编码,永远解决中文乱码问题
request.setCharacterEncoding("UTF-8");
String name = request.getParameter("userName");
String password = request.getParameter("password");
if(request.getParameter("validationCode1").equals(request.getParameter("validationCode"))){
if(name.equals("chenan")&&password.equals("123456")){
session.setAttribute("userName", name);
response.sendRedirect("main.jsp"); }else{
response.sendRedirect("login.jsp"); }
}else{
response.sendRedirect("login.jsp");
}
%>
</body>
</html>
main.jsp
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<html>
<head>
<title>系统主页面</title>
</head>
<body bgcolor="pink">
<%
//获取保存在session中的用户名
String name=(String)session.getAttribute("userName");
%>
您好<%=name%>,欢迎您访问!<br>
<a href="exit.jsp">[退出系统]</a>
</body>
</html>
exit.jsp
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<html>
<head>
<title>退出系统</title>
</head>
<body>
<%
session.invalidate();//销毁session
response.sendRedirect("login.jsp");
%>
</body>
</html>

jsp第5个作业的更多相关文章

  1. JSP第十一次作业

    1.第十二周上机作业(邮件功能)的控制层代码改用为servlet实现.2.学习通发布了考试,截止到本周六.  com.gd.dao  BaseDao 1 package com.gd.dao; 2 3 ...

  2. jsp内置对象作业3-application用户注册

    1,注册页面 zhuCe.jsp <%@ page language="java" contentType="text/html; charset=UTF-8&qu ...

  3. jsp内置对象作业2-留言簿

    1.留言簿页面:liuYan.jsp <%@ page language="java" contentType="text/html; charset=UTF-8& ...

  4. jsp内置对象作业1-用户登录

    题目:编写一个jsp程序,实现用户登录,当用户输入的用户名或密码错误时,将页面重定向到错误提示也,并在该页面显示30秒后,自动返回到用户登录页面. 1.用户登录页面 <%@ page langu ...

  5. jsp第七周作业

    1.p78-p79的例4-9 <%@ page language="java" import="java.util.*" pageEncoding=&qu ...

  6. jsp第六次作业

    1. <%@ page language="java" import="java.util.*" pageEncoding="utf-8&quo ...

  7. jsp第三次作业

    1.在jsp页面中使用include动态标记加载音频 <%@ page language="java" import="java.util.*" page ...

  8. JSP第八次作业

    数据库test 中建个表 stu(stuid 主键 自动增长 ,用户名,密码,年龄) 1.设计一个注册页面,实现用户注册功能2.设计一个登陆页面,实现用户名密码登陆3.两个页面可以互相超链接 1 pa ...

  9. JSP第七次作业

    1.做一个图书类Book id,name,price ,get,set访问器,构造方法2个,1个无参,1个有参做一个测试类,在main中创建3个图书对象,放到list集合中.做一个菜单,可以添加,删除 ...

  10. JSP第五次作业

    1.教材P78-79  例4-9 1 <%@ page language="java" import="java.util.*" pageEncoding ...

随机推荐

  1. 第13周 预习、实验与作业:Java网络编程

    编写一个网络程序,为了与其他网络程序通信,至少要知道对方的什么信息? IP地址 TCP与UDP协议有什么不同的呢?什么时候该选择哪种协议?HTTP使用的是TCP还是UDP?不重要的短信息传送之类的功能 ...

  2. UART之名词定义@@@(通用异步收发传输器:Universal Asynchronous Receiver/Transmitter),通常称作UART。

    通用异步收发传输器(Universal Asynchronous Receiver/Transmitter),通常称作UART.它将要传输的资料在串行通信与并行通信之间加以转换.作为把并行输入信号转成 ...

  3. Nucmer+LINKVIEW实现序列水平的共线性分析

    https://www.cnblogs.com/johnsonzzz/p/15151634.html https://github.com/YangJianshun/LINKVIEW 可以绘制两个基因 ...

  4. OpenMP fortran 学习

    参考自TAMU的PPThttps://people.math.umass.edu/~johnston/PHI_WG_2014/OpenMPSlides_tamu_sc.pdf 什么是OpenMP 在C ...

  5. Java数组之什么是数组?+ 数组的声明和创建

    数组 数组是相同类型数据的有序集合. 数组描述的是相同类型的若干个数据,按照一定的先后次序排序组合而成. 其中,每一个数据称作一个数组元素,每个数组元素可以通过一个下标来访问它们. 数组声明创建 首先 ...

  6. 杭电 oj 第几天?

    Problem Description 给定一个日期,输出这个日期是该年的第几天.   Input 输入数据有多组,每组占一行,数据格式为YYYY/MM/DD组成,具体参见sample input , ...

  7. 错题笔记:int a=b=1这样定义为什么是错误的

    C语言中定义同一类型的多个变量必须以逗号分隔.如: int a,b,c ; =在C语言中是赋值运算符,等号左边的变量,必须是已以定义好的变量才可以. int a=b=1 ; 中,若b已经定义,则是正确 ...

  8. pg copy用法

    postgresql copy用法1,导出表数据1)导出test表数据到txt copy test to '/home/jinli/test.txt'; 2)导出test表数据到csv copy te ...

  9. 转载--文章(感谢陈晨博主分享) 关于 Json.net

    本文出自地址: http://www.cnblogs.com/freshman0216/p/4161800.html#undefined Newtonsoft.Json,一款.NET中开源的Json序 ...

  10. Java-Java数据类型对应MySql数据类型

    开发过程中常用的数据类型:   Java Mysql 备注 整型 java.lang.Integer tinyint(m) 1个字节  范围(-128~127)  java.lang.Integer ...