java开发中struts2或者filter对所有请求和所有页面进行拦截,如何做,高分求助!
RT在JAVA开发中,我要对所有的*.action*.jsp*.html*.htm请求做一个拦截,判断用户是否登录,但是又觉得在jsp页面用if(session.getA...
RT在JAVA开发中,我要对 所有的*.action *.jsp *.html *.htm请求 做一个拦截,判断用户是否登录,但是又觉得在jsp页面 用 if(session.getAttribut("user"))做判断太繁琐,想有一个方便点方法,不知道哪位高人能指教一下,在下不甚感激!唯有悬赏财富值来报答.......(略省数万字)
展开
5个回答
展开全部
看你提问问了半天了,没人回答
,你直接去查看一下servlet 的过滤器就好了。很简单的。
而且也有很多例子。
,你直接去查看一下servlet 的过滤器就好了。很简单的。
而且也有很多例子。
更多追问追答
追问
我知道用Filter可以,但要如何做呢? 网上的例子都不是我想要的... -_-!!!
追答
主要是那东西是好几年弄过类似的,现在代码也丢了。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
写一个servlet :UserFilter 实现Filter 接口
重写方法:public void doFilter(ServletRequest request, ServletResponse response, FilterChain filterChain){
if(session.getAttribut("user")==null) 异常处理;
filterChain.doFilter(request, response);
}
修改web.xml增加servlet配置:
<servlet>
<servlet-name>UserFilter</servlet-name>
<servlet-class>****UserFilter</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>UserFilter</servlet-name>
<url-pattern>*</url-pattern>
</servlet-mapping-->
重写方法:public void doFilter(ServletRequest request, ServletResponse response, FilterChain filterChain){
if(session.getAttribut("user")==null) 异常处理;
filterChain.doFilter(request, response);
}
修改web.xml增加servlet配置:
<servlet>
<servlet-name>UserFilter</servlet-name>
<servlet-class>****UserFilter</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>UserFilter</servlet-name>
<url-pattern>*</url-pattern>
</servlet-mapping-->
追问
我照做了,可是对某些不存在的请求也拦截了,然后前台500 后台抛java.lang.IllegalStateException异常。 能否得到解决呢?
追答
可以分开配多个
UserFilter
*.action
UserFilter
*.jsp
。。。。。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
用filter做鉴权过滤器。
配置拦截*.action *.jsp *.html *.htm就可以了
配置拦截*.action *.jsp *.html *.htm就可以了
追问
可否有具体的配置,供我参考一下!谢谢!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
用filter吧,struts2拦截不了html文件的。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询