监听器和监听器过滤器常见应用GUl中理解
实现一个监听器的接口:(有N种)
1.编写一个监听器
实现监听器的接口
//统计网上在线人数:统计Session
public class olinejqt implements HttpSessionListener {
//创建session监听:看你的一举一动
//一旦创建Session就会触发这个事件
public void sessionCreated(HttpSessionEvent se) {
ServletContext ctx = se.getSession ().getServletContext ();
System.out.println (se.getSession ().getId ());
Integer inter = (Integer) ctx.getAttribute ("session");
//判断inter为空就是没有人
if (inter==null){
//加人
inter = new Integer (1); //1人
}else{
int count = inter.intValue ();
inter = new Integer (count+1);//+1=2人
}
ctx.setAttribute ("session",inter);
}
//销毁Session监听
//一旦销毁Session就会触发这一事件
public void sessionDestroyed(HttpSessionEvent se) {
ServletContext ctx = se.getSession ().getServletContext ();
Integer inter = (Integer) ctx.getAttribute ("session");
//判断inter为空就是没有人
if (inter==null){
//加人
inter = new Integer (0); //0人没人了
}else{
int count = inter.intValue ();
inter = new Integer (count-1);//-1
}
ctx.setAttribute ("session",inter);
}
/**
*Session销毁
* 1.手动销毁 getSession() invalidate()
* 2.自动销毁
*/
}
2.在web中配置监听器
<!--注册监听器 -->
<listener>
<listener-class>com.bubbles.filter.jtqlistener.olinejqt</listener-class>
</listener>
3.看情况是否使用
监听器和监听器GUl中理解
过滤器、监听器常见应用
监听器:GUl编程中经常使用
package com.bubbles.filter.Server;import java.awt.*;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import java.awt.event.WindowListener;public class TestPane1 {public static void main(String[] args) {Frame frame = new Frame ("中秋节快乐"); //新建一个窗体Panel panel = new Panel (null);//面板frame.setLayout (null); //设置窗体的布局frame.setBounds (300,300,500,500);frame.setBackground (new Color (0,0,255));//设置背景颜色panel.setBounds (50,50,300,300);panel.setBackground (new Color (0,255,0));//设置背景颜色frame.add (panel);frame.setVisible (true);//监听事件:监听关闭事件frame.addWindowListener (new WindowListener () {public void windowOpened(WindowEvent e) {System.out.println ("打开");}public void windowClosing(WindowEvent e) {System.out.println ("关闭ing");System.exit (0);}public void windowClosed(WindowEvent e) {System.out.println ("关闭ed");}public void windowIconified(WindowEvent e) {}public void windowDeiconified(WindowEvent e) {}public void windowActivated(WindowEvent e) {System.out.println ("激活");}public void windowDeactivated(WindowEvent e) {System.out.println ("未激活");}});}
}
用户登录之后才能进入首页 !用户注销就不能打开主页!1.用户登录之后,向Session中放入用户的数据2.进入主页的时候要判断用户是否已经登录;要求:在过滤中实现!
HttpServletRequest request1 = (HttpServletRequest) servletRequest;
HttpServletResponse response1 = (HttpServletResponse) servletResponse;if (request1.getSession ().getAttribute (Constant.USER_SESSIN)==null) {response1.sendRedirect ("error.jsp");
}filterChain.doFilter (servletRequest,servletResponse); //过滤器往下走
监听器和监听器过滤器常见应用GUl中理解相关推荐
- javaweb(11) Listener监听器与Filter过滤器
javaweb(11) Listener监听器与Filter过滤器 Listener监听器 什么是Listener监听器 Listener 监听器它是 JavaWeb 的三大组件之一.JavaWeb ...
- Listener监听器与Filter过滤器
1.Listener [1]监听器简介 > Listener是JavaWeb的三大组件之一,Servlet.Filter.Listener > Li ...
- java 监听器 分类_java过滤器和监听器详解 分类: 学习专区
过滤器 1.Filter工作原理(执行流程) 当客户端发出Web资源的请求时,Web服务器根据应用程序配置文件设置的过滤规则进行检查,若客户请求满足过滤规则,则对客户请求/响应进行拦截,对请求头和请求 ...
- android监听器在哪里创建,[转载]android开发中创建按钮事件监听器的几种方法
第一种:匿名内部类作为事件监听器类 Button button=(Button) findViewById(R.id.button); button.setOnClickListener(new On ...
- python监听器_监听器 - python成长中 - 博客园
监听器介绍 监听器 - Listener 监听器(Listener)是J2EE Servlet模块下的组件 Listener的作用对web应用对象的行为进行监控 通过Listener监听自动触发指定的 ...
- java web监听器_JavaWeb监听器
三大组件: Servlet Listener Filter Listener:监听器 * 它是一个接口,内容由我们来实现: * 它需要注册,例如注册在按钮上! * 监听器中的方法,会在特殊事件发生时被 ...
- 三十七 Python分布式爬虫打造搜索引擎Scrapy精讲—将bloomfilter(布隆过滤器)集成到scrapy-redis中...
Python分布式爬虫打造搜索引擎Scrapy精讲-将bloomfilter(布隆过滤器)集成到scrapy-redis中,判断URL是否重复 布隆过滤器(Bloom Filter)详解 基本概念 如 ...
- 工作流实战_23_flowable 任务监听器 事件监听器
项目地址:https://gitee.com/lwj/flowable.git 分支flowable-base 视频讲解地址 https://www.bilibili.com/video/av7932 ...
- vue项目目录结构分析、过滤器、vue文件中基础template、script、style
项目目录结构: 1.在一个项目中一般的目录结构为:my_project------------项目文件夹|____src--------------------------------存放人可以看懂的 ...
最新文章
- 2018年企业运维开发经典面试题
- sqlerror.java.1055,at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1055)
- Authentication和Authorization的区别
- python单例_Python - 单例模式(Singleton)
- 具有中央异常处理和VO验证的Spring Data JPA –框架
- 【LuoguP3241】[HNOI2015] 开店
- “卢十瓦”疯狂预热红米Note 8 10W“快”充不会再有了
- MongoDB的日志系统
- 如何下载FLASH动画
- 解决NLPIR汉语分词系统init failed问题
- SpringBoot2.0系列教程(四)Springboot框架自定义消息转换器
- html标签加载状态,如何让html页面数据没有加载完前显示loading加载中
- 统计检验的基本原理(异常值检验)
- 计算机专硕都是数二英二吗,【专硕初试】大改革?英二、数二都不考了?
- 简单A/BTest验证图片懒加载效果
- 使用html2canvas实现超出浏览器部分截图
- QtAndroid详解(6):集成信鸽推送
- 水果店圈子:水果店开张怎样做促销活动,水果店开业一般有些什么活动
- LVS的NAT、TUNNEL、Full-NAT模式
- vlog拍摄与剪辑入门之路
热门文章
- 巧用FC5的“添加/删除程序”(转)
- 提升领导力的八大建议
- Python数据可视化seaborn(五) -- 分类统计图
- 频率与周期的对应关系
- 千岛湖两日游记,啤酒小镇、天屿山、骑龙巷、东南湖区游玩经验
- 【MATLAB-app】摸索2天,果断放弃gui,彻底爱上了appdesigner。
- java位数不足自动左补0
- [Java]使用ArrayList类来把54张扑克牌发给3位玩家各17张,剩下3张是底牌
- [译] 从原型图到成品:步步深入 CSS 布局
- Cocoapods:podspec与使用过程中遇到的问题