Servlet账户登陆优化

Servlet账户登陆优化

项目基于之前的文章继续升级:

主要升级:

  • 使用Session保持用户登陆状态
  • 使用servlet处理登陆和退出请求
  • 根据Session中的type类型判断用户类型,给定其对应的导航

讲解:

dologin的响应

代码变化:
登陆表单目标地址由dologin.jsp变为dologin,并且dologin只会响应POST请求,GET请求这个地址,直接跳转到login.jsp页面。

form表单

效果:
dologin的GET响应

dologin对POST请求正常处理,原因是重写了servlet。
代码如下:
dologin代码

这里有一个小坑,就是账户验证不成功直接显示的中文会有乱码,字符集问题搞了大半天还是没有解决,打算通过跳转错误页面来解决这个问题,正式部署生产项目不需要直接显示,都是通过对应信息的页面来处理,所以也不是什么大事,希望能早日找到原因。

登陆成功后

POST正确提交,并且验证成功后,会跳转到profile.jsp页面,profile.jsp通过读取Session过来的值判断状态,并且根据用户类型,显示对应的导航。

效果:
超级管理员账户登陆

物业账户登陆

业主账户登陆

实现代码如下:
根据用户类别转换导航

logout退出登陆

通过servlet增加注册session的功能,不管GET方式到这个地址,还是POST方式到这个地址都会进行正常退出账户登陆和清除session。

效果:
退出登陆

终端显示

实现代码:
logout.java

感兴趣的同学可以访问GitHub看到这个项目。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/101229.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • c++线程间通信_c语言两个线程如何通信

    c++线程间通信_c语言两个线程如何通信c++线程间通过PostThreadMessage和GetMessage函数进行通信,下面用代码演示两个线程间的通信://ConsoleApplication1.cpp:定义控制台应用程序的入口点。//#include<stdio.h>#include<windows.h>usingnamespacestd;DWORDWINAPIThreadFun1(LPVOIDparam);DWORDWINAPIThreadFun2(LPVOIDpara

    2022年10月6日
    2
  • matlab画图,添加图名,坐标轴名,曲线名称(图例)[通俗易懂]

    matlab画图,添加图名,坐标轴名,曲线名称(图例)[通俗易懂]matlab加图名,坐标轴名,图例

    2022年9月2日
    6
  • ConcurrentHashMap

    ConcurrentHashMap

    2021年8月28日
    55
  • 算法设计克林伯格pdf_LSTM算法

    算法设计克林伯格pdf_LSTM算法第一部分 levmar的安装与使用 Levenberg-Marquardt算法是求解非线性问题的一个非常好用的算法。该算法属于信赖域算法的一种,关于信赖域算法的解释可以参考这一博主的解释:关于信赖域算法理解,个人感觉很好。    Levenberg-Marquardt算法是一个开源的算法,其文件下载地址如下:http://www.netlib.org/clapack/C

    2022年10月1日
    3
  • r语言的for循环_两效十MVR强制循环

    r语言的for循环_两效十MVR强制循环R语言for循环for循环本教程将针对初学者,探讨如何在R语言中编写基本的for循环和嵌套式for循环。简单for循环R中for循环的基本语法是:for(iR简单for循环示例:#forloopinR上述例子中直接将结果进行print,在实际应用中基本不会这么做。一般会将输出结果以向量或其他形式储存。如下:x5)for(iin1:5){x[i]2}x#outp…

    2025年7月14日
    3
  • 离散数学在计算机科学中的应用论文(集合论在计算机的应用)

    自从我们学院进行软件工程认证后,期末考试的专业课全部是大题。这次离散数学的最后一题是:利用本学期学到的离散数学的知识阐释其在一个软件工程中的应用。下面说说离散数学的应用。离散数学在数据结构中的应用数据结构中将操作对象间的关系分为四类:集合、线性结构、树形结构、图状结构或网状结构。数据结构研究的主要内容是数据的逻辑结构,物理存储结构以及基本运算操作。其中逻辑结构和基本运算操作来源于离散

    2022年4月17日
    118

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号