巴比伦花园
BlogJava
::
首页
::
新随笔
::
联系
::
聚合
::
管理
posts - 1, comments - 1, trackbacks - 0
<
2024年11月
>
日
一
二
三
四
五
六
27
28
29
30
31
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
1
2
3
4
5
6
7
常用链接
我的随笔
我的评论
我的参与
最新评论
留言簿
(1)
给我留言
查看公开留言
查看私人留言
随笔档案
2007年8月 (1)
文章档案
2007年7月 (1)
hibbernate
使用hibernate实现树形结构无限级分类
Acegi 學習筆記
JSP经典面试题
mysql学习笔记!
给appfuse的web.xml加了些注释
java
Java反射经典实例 Java Reflection Cookbook (初级)
java面试试题
spring
java Filter的实际应用一例
Spring中拦截器地应用
使用 Acegi 保护 Java 应用程序
使用Filter控制页面的权限
扩展acegi以支持验证码等
SSH
spring+hibernate+pager taglib实现分页(底层也做了分页)(一)
系列文章
appfuse中的UrlRewrite
Struts+Spring+Hibernate实现上传下载
struts+spring+hibernate的web应用
Struts+Spring+Hibernate练习(完整)
struts+spring+hibernate通用分页方法
struts
搜索
最新评论
1. re: 正确优雅的解决用户退出问题 (转)
没有实践过的理论,就是垃圾
--123
(转)两个Filter类:登录过滤和编码过滤
http://blog.csdn.net/ayace/archive/2005/05/14/374592.aspx
LoginFilter.java:
import
javax.servlet.FilterChain;
import
javax.servlet.ServletRequest;
import
javax.servlet.ServletResponse;
import
java.io.IOException;
import
javax.servlet.Filter;
import
javax.servlet.http.HttpServletRequest;
import
javax.servlet.http.HttpServletResponse;
import
javax.servlet.ServletException;
import
javax.servlet.FilterConfig;
/**/
/*
*
* @author Ace
* web.xml配置如下:
* <filter>
* <filter-name>login</filter-name>
* <filter-class>
* org.waityou.news.util.filters.LoginFilter
* </filter-class>
* </filter>
* <filter-mapping>
* <filter-name>login</filter-name>
* <url-pattern>/manager/*</url-pattern>
* </filter-mapping>
*/
public
class
LoginFilter
implements
Filter
{
protected
FilterConfig filterConfig;
public
void
doFilter(
final
ServletRequest req,
final
ServletResponse res,
FilterChain chain)
throws
IOException, ServletException
{
HttpServletRequest hreq
=
(HttpServletRequest) req;
HttpServletResponse hres
=
(HttpServletResponse) res;
String isLog
=
(String) hreq.getSession().getAttribute(
"
isLog
"
);
if
((isLog
!=
null
)
&&
((isLog.equals(
"
true
"
))
||
(isLog
==
"
true
"
)))
//
检查是否登录
{
chain.doFilter(req, res);
return
;
}
else
hres.sendRedirect(
"
/error.html
"
);
//
如果没有登录,把视图派发到登录页面
}
public
void
destroy()
{
this
.filterConfig
=
null
;
}
public
void
init(FilterConfig config)
{
this
.filterConfig
=
config;
}
public
void
setFilterConfig(
final
FilterConfig filterConfig)
{
this
.filterConfig
=
filterConfig;
}
}
SetCharacterEncodingFilter.java:
import
java.io.IOException;
import
javax.servlet.Filter;
import
javax.servlet.FilterChain;
import
javax.servlet.FilterConfig;
import
javax.servlet.ServletException;
import
javax.servlet.ServletRequest;
import
javax.servlet.ServletResponse;
/** */
/**
*
@author
Ace 编码过滤,一律设置成UTF-8
*
* web.xml中配置如下:
* <filter>
* <filter-name>Set Character Encoding</filter-name>
* <filter-class>
* org.waityou.news.util.filters.SetCharacterEncodingFilter
* </filter-class>
* </filter>
* <filter-mapping>
* <filter-name>Set Character Encoding</filter-name>
* <url-pattern>/*</url-pattern>
* </filter-mapping>
*/
public
class
SetCharacterEncodingFilter
implements
Filter
{
public
void
destroy()
{}
public
void
doFilter(ServletRequest request, ServletResponse response,
FilterChain chain)
throws
IOException, ServletException
{
request.setCharacterEncoding(
"
UTF-8
"
);
//
传递控制到下一个过滤器
chain.doFilter(request, response);
}
public
void
init(FilterConfig filterConfig)
throws
ServletException
{}
}
posted on 2007-07-31 17:38
守望者
阅读(153)
评论(0)
编辑
收藏
新用户注册
刷新评论列表
只有注册用户
登录
后才能发表评论。
网站导航:
博客园
IT新闻
知识库
C++博客
博问
管理