亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

Servlet賬戶登陸優化

標簽:
Java

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

- [Jsp登陆与MySQL对接验证](https://www.jianshu.com/p/0b79c21b4b5a)


## 主要升级:

- 使用``Session``保持用户登陆状态

- 使用``servlet``处理登陆和退出请求

- 根据``Session``中的``type``类型判断用户类型,给定其对应的导航


## 讲解:


### dologin的响应

代码变化:

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


![form表单](https://upload-images.jianshu.io/upload_images/1248990-dd7349d361199dc2.jpg?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)


效果:

![dologin的GET响应](https://upload-images.jianshu.io/upload_images/1248990-fd943e05fadb4616.gif?imageMogr2/auto-orient/strip)


dologin对POST请求正常处理,原因是重写了servlet。

代码如下:

![dologin代码](https://upload-images.jianshu.io/upload_images/1248990-0a0fa6589b9cfb3c.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)


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


### 登陆成功后

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


效果:

![超级管理员账户登陆](https://upload-images.jianshu.io/upload_images/1248990-c0148806117702d4.gif?imageMogr2/auto-orient/strip)


![物业账户登陆](https://upload-images.jianshu.io/upload_images/1248990-105bf450fae620c4.gif?imageMogr2/auto-orient/strip)


![业主账户登陆](https://upload-images.jianshu.io/upload_images/1248990-b8c3970637c9006c.gif?imageMogr2/auto-orient/strip)



实现代码如下:

![根据用户类别转换导航](https://upload-images.jianshu.io/upload_images/1248990-4e6a795d4aa831fc.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)


### logout退出登陆

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


效果:

![退出登陆](https://upload-images.jianshu.io/upload_images/1248990-20c2a98258925ace.gif?imageMogr2/auto-orient/strip)


![终端显示](https://upload-images.jianshu.io/upload_images/1248990-54803ceec08c8f1d.jpg?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)


实现代码:

![logout.java](https://upload-images.jianshu.io/upload_images/1248990-49c282b86fa58022.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)


感兴趣的同学可以访问[GitHub](https://github.com/ruanfumin/YellowStar)看到这个项目。


點擊查看更多內容
TA 點贊

若覺得本文不錯,就分享一下吧!

評論

作者其他優質文章

正在加載中
  • 推薦
  • 評論
  • 收藏
  • 共同學習,寫下你的評論
感謝您的支持,我會繼續努力的~
掃碼打賞,你說多少就多少
贊賞金額會直接到老師賬戶
支付方式
打開微信掃一掃,即可進行掃碼打賞哦
今天注冊有機會得

100積分直接送

付費專欄免費學

大額優惠券免費領

立即參與 放棄機會
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號

舉報

0/150
提交
取消