javaweb学习的第9天(2021-11-15)--------登录功能的实现
Posted 有上进心的阿龙
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了javaweb学习的第9天(2021-11-15)--------登录功能的实现相关的知识,希望对你有一定的参考价值。
javaweb学习的第9天(2021-11-15)--------登录功能的实现
JSTL标签:
取代这些代码:
我们现在正常的逻辑是:
只有登陆了之后才会进入main.jsp查看所有员工的信息。
但是如果有用户直接访问main.jsp直接报错。
例如:我们没有登陆淘宝去点击加入购物车的话,网站会引导我进入登陆界面。
这个技术是过滤器技术;
如果没有登陆,就直接访问main.jsp,就要引导我进入登陆界面。
过滤器:
过滤器也是WEB组件。
它可以拦截客户端和服务器之间的请求和响应。
过滤器:在你客户端请求服务器的时候拦截一次,在服务器响应给浏览器的时候拦截一次、
所以:过滤器会拦截两次。
重点:过滤器是在Servlet之前执行的。
原路返回:
来的时候:123
走的时候:321
在web.xml里面的配置顺序决定了执行的顺序。
需求:当你直接在浏览器访问main.jsp的时候,就要实时过滤拦截,引导进入登陆页面。
第一步:
核心方法:
配置:
一般把过滤器配置到servlet的上面。
将来如果你是main.jsp请求,就进入过滤器的代码中。
在过滤器里面查看当前的请求是谁?
因为你写的是:/*
所以过滤器里面第一步做的是:
拿到请求的URL
如果你是直接在浏览器里面输入:
http://localhost:8080/login/main.jsp
你按了回车之后,会自动进入login.jsp页面。
但是如果你按http://localhost:8080/login/login.jsp。它不会进行拦截。
统计当前网站的在线人数:
使用的技术:
监听器:Listener
Listener监听session对象的创建,只要创建了,说明一个新用户已经上线了。
区别用户上线:看session对象的个数
监听器可以监听:
对象的生命周期事件:对象的创建和销毁
数据绑定事件:之前往session里面绑定数据
替换数据事件:
监听Session对象的创建:
我们在sessionCreated方法里面,只要执行这个方法,说明有一个新的session对象被创建了,然后我们要给在线人数+1
而且这个在线人数需要让所有用户都能看到
每个用户登陆进来都看得到。
又涉及到:ServletContext 这个是Servlet的上下文对象。
在JSP里面:applicationScope 就是 ServletContext
叫法不一样。
一个web应用只有一个对象。
Tomcat服务器一启动就创建ServletContext对象,关闭了才销毁它。
在web.xml里面配置监听器:
处理前端:
当我们登陆成功的时候,会进入主页面main.jsp
我们可以从servletContext对象里面,根据key=count获取值来展示在线人数。
JSON
全称:
javascript Object Notation
js提供的一种数据交换格式。
json本质上就是一个js对象,但是很特殊,可以直接转换为字符串
实现js和java的数据交换
java解析json的工具:
jackson
以上是关于javaweb学习的第9天(2021-11-15)--------登录功能的实现的主要内容,如果未能解决你的问题,请参考以下文章