综合案例——基于 JSP + Servlet 的用户登录验证

【例6-1】 实现一个简单的用户登录验证程序,如果用户名是 abc ,密码是 123,则显示欢迎用户的信息,否则显示“用户名或密码不正确”。

【分析】 该案例采用 JSP 页面只完成提交信息和验证结果的显示,而验证过程由 Servlet 完成,这些组件通过 request (或 HttpServletRequest)对象实现数据共享。由提交页面将数据传递给 Servlet,而 Servlet 获取数据并实现验证,根据验证结果,转向显示验证结果的页面。

【设计】 根据分析,该系统需要设计3个组件以及修改 web.xml 文件。

(1)登录表单页面: login.jsp。

(2)处理登录请求并实现验证的 Servlet:LoginCheckServlet.java。

(3)显示提示的页面: Info.jsp。

(4)修改 web.xml,配置 Servlet的信息。

假设,组件之间共享数据的参数为 username 和 userpwd。

【实现】

(1)登录表单页面login.jsp:

<%@ page contentType="text/html;charset=gb2312"%>
<html>
<head>
<title>登录页面</title>
</head>
<body>
<form action="CheckServlet" method="post"><table><tr align="center"><td>请输入用户名:<input type="text" name="username" size="20"></td></tr><tr align="center"><td>请输入密码:&nbsp;&nbsp;<input type="password" name="userpwd"size="20"></td></tr align="center"><td><input type="submit" value="登录" /> <input type="reset" /></td></tr></table>
</form>
</body>
</html>

(2)处理登录的 Servlet:LoginCheckServlet.java。

package servlets;import java.io.IOException;
import java.io.PrintWriter;import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;public class LoginCheckServlet extends HttpServlet {public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {String userName = request.getParameter("username");String userPwd = request.getParameter("userpwd");String info = "";if(("abc".equals(userName))&&"123".equals(userPwd)){info = "欢迎你"+userName+"!";}else{info = "用户名或密码不正确!";}request.setAttribute("outputMessage", info);request.getRequestDispatcher("/Info.jsp").forward(request,response);}
}

(3)显示提示的页面 Info.jsp:

<%@ page pageEncoding="UTF-8"%>
<html><head><title>显示结果页面</title></head><body><%=request.getAttribute("outputMessage") %></body>
</html>

(4)修改配置文件,在 web.xml 中,添加LoginCheckServlet 的配置信息:

<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5"xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://java.sun.com/xml/ns/javaeehttp://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"><servlet><servlet-name>LoginCheckServlet</servlet-name><servlet-class>servlets.LoginCheckServlet</servlet-class></servlet><servlet-mapping><servlet-name>LoginCheckServlet</servlet-name><url-pattern>/CheckServlet</url-pattern></servlet-mapping>
</web-app>

(5)运行结果:

       

    

基于 JSP + Servlet 的用户登录验证相关推荐

  1. 网站用户登录验证:Servlet+JSP VS Struts书剑恩仇录

    ? 什么是Struts框架 –从不同的角度看待Struts框架 –Struts框架的优点 ? 下载安装Struts框架 –下载配置Struts框架 –测试Struts框架 –安装Struts应用程序 ...

  2. JavaWeb 实验 Servlet用户登录验证

    实验2.2 Servlet用户登录验证 实验内容: 编写JSP程序,实现用户提交登录表单给Servlet,由Servlet 查询数据库(模拟查询,不用真的连接数据库查询),对用户是否存在进行验证. 实 ...

  3. 使用SSH框架实现用户登录验证

    今天,写一个非常简单的通过struts+hibernate+spring的集成来实现用户登录验证的例子,让大家了解一下三者是如何是整合的. 我们可以通过myeclipse的向导,生成相应的环境搭建,如 ...

  4. 基于JSP/SERVLET学生管理系统

    项目编号:BS-GX-012  本系统基于JSP/SERVLET技术开发实现,前端采用easyui进行页面设计,用户交互性好,采用三层架构,MVC设计模式,数据库采用MYSQL数据库,开发工具为IDE ...

  5. eclipse jsp 写 js 代码提示_基于jsp+servlet的宠物管理系统

    源码编号:B-E00002  点击查看分类规则 项目类型:Java EE项目(java web项目) 项目名称:基于jsp+servlet的宠物管理系统(Pet) 当前版本:V1.0.0版本 难度等级 ...

  6. 基于jsp servlet javabean的学生管理系统

    日期:2019/10/24 该学生管理系统基于jsp+servlet+javabean,使用MVC模式,是一个很基础的学生管理系统,由于这是本学期的课程大作业,所以现在还没有完全写完,这篇博文会根据进 ...

  7. Java Web——基于Jsp+Servlet的大学生社团管理系统

    JavaWeb课程设计+JavaWeb实训作业:(Jsp+Servlet+Mysql+Tomcat+Idea) 项目类型:JAVA WEB项目 用户类型:3个角色(管理员+社长+学生) 主要技术:Js ...

  8. 基于jsp+servlet+mysql的酒店管理系统(附源码)

    本系统是基于jsp+servlet+mysql的前后端分离的酒店管理系统,前后端分离是指前端和后端分别是两个独立存在的项目,能独立运行.没有前端项目,后端也能运行且进行数据管理,没有后端项目,前端也能 ...

  9. 基于JSP + Servlet + Mysql 的校园二手交易平台(源码 + 文档)

    基于JSP + Servlet + Mysql 的校园二手交易平台 1.系统开发背景 2.系统设计 3.系统实现 3.1开发所用技术 3.2数据字典 3.2系统开发 3.2.1配置环境 3.2.2创建 ...

最新文章

  1. LeetCode刷题记录9——58. Length of Last Word(easy)
  2. 第十、十一周项目三-警察和厨师(1)
  3. docker 安装mysql
  4. 802.11 波束成形技术总结
  5. php 主观题判分,司法考试改革后多少分通过,客观题主观题分数怎么算?
  6. Linux虚拟机克隆后网卡找不到问题
  7. mysql数据库增删改查关键字_mysql数据库的增删改查
  8. 阿里推出会议AI助理“听悟”,面向未来会议
  9. mino文件服务器删除文件,Spring-minio
  10. 【计算几何】点在多边形内部
  11. MiniDao Framework 1.3.0 发布,J2EE持久化解决方案
  12. 苏州为什么只能做二线中游?
  13. 数据结构—链表-单链表应用-拆分链表
  14. linux内核奇遇记之md源代码解读之十一raid5d
  15. [洛谷P3292][SCOI2016]幸运数字
  16. 《项目百态》读感系列”苏式风格“
  17. 第19届亚太零售商大会 | 奇点云CEO行在受邀出席发表演讲
  18. 矩阵正定 matlab,MatLab的:CHOL矩阵必须是正定
  19. 京东云主机挂载云硬盘、分区、格式化
  20. 07 不同 vcf 注释结果转 maf

热门文章

  1. FFmpeg基本用法,尤其是等比例压缩啥的
  2. 治理有精度 AI赋智加强城市精细化管理
  3. Kafka 消息队列如何保证顺序性?
  4. Ubuntu12.04下载android-goldfish-2.6.29
  5. 实体店店铺管理软件应该怎么挑?有这几个功能的错不了!
  6. 上海中侨职业技术学院计算机专业好吗,上海中侨职业技术学院学费一年多少?实力专业有哪些?宿舍条件...
  7. 金山——弱智的翻译程序
  8. Unity ——使用贝塞尔曲线对三维管状物体进行弯曲
  9. 50款国外后期草地素材t
  10. cuda opencl opengl opencv