戏说java web开发中的listener和filter
文章转自:http://javastudy.blog.51cto.com/183528/78723
jsp开发中的 监听器和过滤器,这两个东西要说起来,很大,很繁。今天我想用一个现实的例子,来说明这两个东东的作用。
案例描述
假设你平时生活在北京,有天你去一个很边远很贫穷的山村体验生活,到了那个山村后,你想要什么东西,村长都会同意,然后安排村民送给你,但是有一点例外的是,一旦你问他们要钱,村长坚决不给,还会带领村民把你打回北京去。
你为了从村民那里带走尽量多的东西,所以你在出发前准备了一个大袋子,希望把村民给的东西都放到袋子里;然后你在回到城市后,这个袋子就没用了,你就把这个袋子给扔了。
代码模拟
恩,我想用如下简单代码来模拟以上案例,大家可以想一下监听器扮演者什么角色?过滤器扮演什么角色?
1. 新建一个java web project;
2. 默认的index.jsp页面上加上两个链接,模拟要村民要红薯和要钱,如下:
<html>
<body>
<h1>欢迎掉入无名村,哈哈</h1><br>
<a href="hongshu.jsp">给红薯</a><br/>
<a href="money.jsp">给钱</a><br/>
</body>
</html>
3. 新建一个大布袋类:BigBag.java,如下:
package chb.demo.web;
import java.util.HashMap;
public class BigBag ...{
public static HashMap<String, Integer> bag;//村民的东西就放在这个袋子里
}
4. 新建一个监听器:MyListener.java,如下:
package chb.demo.web;
import java.util.HashMap;
import javax.servlet.ServletContextEvent;
import javax.servlet.ServletContextListener;
public class MyListener implements ServletContextListener...{
public void contextDestroyed(ServletContextEvent arg0) ...{
BigBag.bag = null;
&nb
相关文档:
package test;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.net.Authenticator;
import java.net.HttpURLConnection;
import java.net.PasswordAuthenticat ......
用Java写的图片浏览器
package com.wenbo.myprogrem.day16;
import java.awt.BorderLayout;
import java.awt.CardLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionLis ......
<%
URL url = new URL("http://www.itpub.net");
//建立URL对象,并实例化为url,获得要抓取的网页地址
BufferedReader reader = new BufferedReader(new InputStreamReader(url.openStream(),"GB2312"));
//建立BufferedReader对象,并实例化为reader,这里的GB2312是要抓取的网页编码格式
whi ......
import java.io.File;
import java.io.FileFilter;
import java.io.FilenameFilter;
/**
* 文件列表。<br>
* 可以指定过滤条件。
*
* @author leo
*
*/
public class FileList {
/**
* @param args
*/
public static void main(String[] ......
Java学习拾遗2--由String str=”abc”引出的故事(综合了下边的一些指点已更新,感谢在下边留言交流的朋友,谢谢你们的指点!) 收藏 此文于2009-11-10被推荐到CSDN首页
如何被推荐?
话题是由如下的事情引出的:
public class StringTest {
public static void main(String[] args) {
......