记一下,免得以后忘记了,又要去查。

文件共有四个web.xml、login.jsp、logout.jsp、welcome.jsp四个文件

测试环境:Tomcat 6.0.x

假设项目名称是LoginSample,我的目录结构是这样的

...\webapps\LoginSample\WEB-INF\web.xml

...\webapps\LoginSample\login.jsp

...\webapps\LoginSample\logout.jsp

...\webapps\LoginSample\welcome.jsp

----------------------------------------------------------------------------------------------

web.xml源码清单

  1. <web-app xmlns="http://java.sun.com/xml/ns/j2ee"
  2. xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  3. xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"
  4. version="2.4">
  5. <welcome-file-list>
  6. <welcome-file>welcome.jsp</welcome-file>
  7. </welcome-file-list>
  8. </web-app>

login.jsp源码清单

  1. <%@ page contentType="text/html;charset=UTF-8" %>
  2. <html>
  3. <head>
  4. <title>JSP简单登录实例</title>
  5. </head>
  6. <body>
  7. <h2>请登录</h2>
  8. <form method="POST" >
  9. Login Name: <input type="text" name="Name"><br>
  10. Login Password: <input type="text" name="Password" ><br>
  11. <input type="submit" value="Send"><br>
  12. <form>
  13. <%
  14. if (request.getParameter("Name") != null
  15. && request.getParameter("Password") != null) {
  16. String Name = request.getParameter("Name");
  17. String Password = request.getParameter("Password");
  18. if (Name.equals("a") && Password.equals("a")) {
  19. session.setAttribute("Login", "OK");
  20. session.setAttribute("myCount", new Integer(1));
  21. response.sendRedirect("welcome.jsp");
  22. }
  23. else {
  24. %>
  25. 登录失败:用户名或密码不正确~
  26. <%
  27. }
  28. }
  29. %>
  30. </body>
  31. </html>

logout.jsp源码清单

  1. <%@ page contentType="text/html;charset=UTF-8" %>
  2. <html>
  3. <%
  4. session.setAttribute("Login", "");
  5. %>
  6. <body>
  7. <h2>你已经退出登录</h2>
  8. </body>
  9. </html>

welcome.jsp源码清单

  1. <%@ page contentType="text/html" pageEncoding="UTF-8" import="java.util.*"%>
  2. <html>
  3. <body>
  4. <h2>欢迎页面(测试session)</h2>
  5. <%
  6. String  Login = (String)session.getAttribute("Login");
  7. int     nCount=0;
  8. if (Login != null && Login.equals("OK")) {
  9. Integer myCount = (Integer)session.getAttribute("myCount");
  10. if(myCount!=null)
  11. {
  12. nCount = myCount.intValue();
  13. nCount = nCount + 1;
  14. session.setAttribute("myCount",new Integer(nCount));
  15. }
  16. %>
  17. 登录成功,myCount=<%=nCount%></br>
  18. <input type=button value="退出" onclick="javascript:location.href='logout.jsp'">
  19. <%
  20. }
  21. else {
  22. %>
  23. <jsp:forward page="login.jsp"/>
  24. <%
  25. }
  26. %>
  27. </body>
  28. </html>

from: http://blog.csdn.net/lee353086/article/details/8080933

纯JSP简单登录实例的更多相关文章

  1. 纯jsp用户登录系统

    用纯jsp技术实现用户登录系统,需要用到三个.jsp文件.在文本目录下新建三个.jsp文件,分别命名为login.jsp,logincl.jsp和wel.jsp. 1.login.jsp文件用来放界面 ...

  2. JSP+servlet简单登录实例

    一个简单的jsp+servlet实例,实现简单的登录 转载▼ http://blog.sina.com.cn/s/blog_5c5bc9070100z7wb.html     开发环境myeclips ...

  3. 简单登录实例Login

    本人菜鸟~~学习过程中~~请求老大们指导!!谢谢!!! 从基础学习,坚持下去,每天进步一点点!! 1.首先要实现登录,通俗点总得有个登陆的样子吧,也就是人要有个脸面嘛!说做就做!自己属于菜鸟级别的,所 ...

  4. 纯JSP实现简单登录跳转

    1.JSP介绍 JSP即Java Server Pages,JSP技术使用Java编程语言编写类XML的tags和scriptlets,来封装产生动态网页的处理逻辑.网页还能通过tags和script ...

  5. 用纯jsp实现用户的登录、注册与退出

    用户的登录.注册和退出是一个系统最常见的功能,现将各功能用jsp代码表示出来 用户的登录: 其中connDB是数据库连接类,将用户名username放入session中 <%@ page con ...

  6. Struts1入门实例(简单登录)

    Struts1入门实例(简单登录) 现在开始加入公司的核心项目,但由于项目开发比较早,所以使用的技术不是很新潮,前台用的还是struts1. 虽然不是什么新技术,但仍可以从中学到好多东西的.花了一个晚 ...

  7. Struts2开发环境搭建,及一个简单登录功能实例

    首先是搭建Struts2环境. 第一步 下载Struts2去Struts官网 http://struts.apache.org/ 下载Struts2组件.截至目前,struts2最新版本为2.3.1. ...

  8. 自动化测试基础篇--Selenium简单的163邮箱登录实例

    摘自https://www.cnblogs.com/sanzangTst/p/7472556.html 前面几篇内容一直讲解Selenium Python的基本使用方法.学习了什么是selenium: ...

  9. JSP简单实现登录和注销

    JSP简单实现登录和注销 需求:用户登录成功后跳转到欢迎页面 用户登录失败跳转到初始的登录界面 用户点击注销,用户退出登录状态需要重新登录 登录页面的JSP代码: <%@ page langua ...

随机推荐

  1. Hadoop学习之路(二)HDFS基础

    1.HDFS前言 HDFS:Hadoop Distributed File System,Hadoop分布式文件系统,主要用来解决海量数据的存储问题. 设计思想 分散均匀存储 dfs.blocksiz ...

  2. 关于C(n,m) 的奇偶 ,与C(n,0),C(n,1),C(n,2)…C(n,n).当中有多少个奇数

    (n & m) == m  为奇数 C(n,0),C(n,1),C(n,2)…C(n,n).当中有多少个奇数 第一种想法是Lucas定理推导,我们分析一下 C(n,m)%2,那么由lucas定 ...

  3. spring4.1.8扩展实战之八:Import注解

    spring4.1.8扩展实战之八:Import注解 2018年09月10日 12:53:57 博陵精骑 阅读数:441更多 所属专栏: spring4源码分析与实战    版权声明:欢迎转载,请注明 ...

  4. 修改linux文件的mtime

    一.  Linux 文件个时间信息 所有Unix 文件系统中的文件或文件夹有三个时间戳,分别为atime.ctime和mtime. atime 表示最后一次访问(仅仅访问,没有改动)文件的时间: mt ...

  5. shtml与html

    前言 在浏览网页的时,忽然发现了一个网址不是以[.html]结尾,而是[.shtml].顿时勾起了我的好奇心,这是什么鬼?于是打开google,开始维基. SHTML 什么是 SHTML 使用SSI( ...

  6. 004--PowerDesigner设置显示1对多等关系

    PowerDesigner设置显示1对多等关系 Step1:双击Reference连接线 Step2:设置Cardinality Step3:显示Cardinality Tools->Displ ...

  7. C++学习笔记(二)--基础

    1.浮点型数值不管写成什么样 都是以指数形式保存在内存中 数符|数字部分|指数部分 例:+0.33E10 数字部分的整数部分不能大于1,小数点后面不能是0. 2.字符数据是以整数形式保存在内存中的(A ...

  8. securecrt(CRT)导入会话

    securecrt是个非常流行的远程管理维护工具,支持fssh.ssh2.telnet等多种协议,也支持中文.设备管理多了,自行手工添加也是很累的活.偷下懒,从别人那复制下文件,倒入到自己的secur ...

  9. Netty之Page级别的内存分配

    Page 级别的内存分配: 之前我们介绍过, netty 内存分配的单位是chunk, 一个chunk 的大小是16MB, 实际上每个chunk, 都以双向链表的形式保存在一个chunkList 中, ...

  10. 【xinsir】githook之precommit分享

    钩子类型 使用node编写githook,以pre-commit为例: 1.在项目下配置自动生成pre-commit文件,一般可以在启动项目的脚本下添加: modifyPreCommit: funct ...