当前位置:首页 » 网页前端 » javaweb登录过滤器
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

javaweb登录过滤器

发布时间: 2022-08-02 12:58:21

A. javaWeb开发怎么设置过滤器

我这个是过滤所有的action和jsp,但除了登录页面和登录的action。
就是登录后才可以操作。

B. java web登录后的各种请求在浏览器地址不变,过滤器该怎样拦截每次的请求

public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException {
HttpServletRequest req = (HttpServletRequest)request;
if(req.getSession().getAttribute("user")==null){
req.setAttribute("error", "请你先登录");
//非法请求才会进到这里面,在这里保存请求的url地址,在成功登录后再进行跳转
req.getSession().setAttribute("goUrl", req.getRequestURL()+"?"+ req.getQueryString());
request.getRequestDispatcher("/ulogin.jsp").forward(request, response);
}

else{
chain.doFilter(request, response);
}
}
上面的代码是过滤器中的代码
下面的是servlet中的代码
if(request.getSession().getAttribute("goUrl")!=null){
String url = (String)request.getSession().getAttribute("goUrl");
response.sendRedirect(url);
}
else{
response.sendRedirect("/webshopping/index.jsp");
}

C. java-web页面绕过过滤器的问题

你这个代码有点简单了.可以用一个框架 叫shiro,它里面的逻辑是很完整的,我忘记具体代码怎么写的了,但是你注销之后是否重定向到登录页面了呢

D. java web登陆状态过滤器 图片也被拦截了,怎么办

在过滤器中添加代码String uri = request.getRequestURI();
过滤uri后缀是.js,.css的不进行校验就好了,另外一种方法则相反,判断你要的后缀,然后过滤,其他的都放行

E. javaweb中过滤器应该怎么调用

在web.xml里面配置,如下:

<filter>
<filter-name>FileUploadFilter</filter-name>
<filter-class>com.ckfinder.connector.FileUploadFilter</filter-class>
<init-param>
<param-name>sessionCookieName</param-name>
<param-value>jsessionid</param-value>
</init-param>
<init-param>
<param-name>sessionParameterName</param-name>
<param-value>JSESSIONID</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>FileUploadFilter</filter-name>
<url-pattern>/plug-in/ckfinder/core/connector/java/connector.java</url-pattern>
</filter-mapping>

有一个filter 和一个filter-mapping>

F. java web 过滤器

你web.xml中过滤器配置出问题了,你这个过滤器需要过滤全部内容,而不是仅仅过滤CountFilter,只需将要过滤的内容改为/*即可,如下
<filter-mapping>
<filter-name>CountFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
认真回答,请采纳,谢谢合作!!!

G. java web中的过滤器

过滤器执行的顺序是

//1.过滤器代码
.....
//2.让请求继续执行
filterChain.doFilter(request,response)//这句代码的意思是让请求往下继续执行
//3.执行完后,继续执行过滤器代码
....
//响应客户

H. 关于JAVA WEB中登陆过滤器的问题

你先把过滤器new出来,再调用不就好了

public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {

response.setContentType("text/html;charset=gbk");
PrintWriter out = response.getWriter();

String name = request.getParameter("username");
String password = request.getParameter("password");
HttpSession session = request.getSession();

if(name.equals("admain") && password.equals("admain")){

session.setAttribute("usertype", "admain");

Fileter f=new Fileter();
f.doFilter(request,response,chain);//反正你先把过滤器new出来,再调用不就好了,具体的属性看实际情况,我是手写代码,难免有错

}else{
out.print("<a href=Admain.html>用户页面</a>");
}
}

I. java项目和web项目中的过滤器文件怎么使用

JAVA组件过滤器Filter

简介:
同servlet非常类似,Filter就是JAVA组件,请求发送到servlet前,可以使用过滤器Filter截获和处理请求,同时servlet结束以后,响应发回以前同样可以使用过滤器Filter处理响应。WEB容器可以用web.xml部署文件声明何时调用过滤器Filter。

说明:
过滤器Filter也具有生命周期:init()->doFilter()->destroy().

例:
1.JAVA类
public class EncodingFilter extends HttpServlet implements Filter {
private FilterConfig filterConfig;
// 初使化
public void init(FilterConfig filterConfig) throws ServletException {
this.filterConfig = filterConfig;
}
// 执行
public void doFilter(ServletRequest request, ServletResponse response,
FilterChain filterChain) {
// 过滤方法写在这里
}
// 销毁
public void destroy() {
}
}

2.web.xml配置

<filter>
<filter-name>encodingfilter</filter-name>
<filter-class>com.tongtech.bjvsp.sysmng.filter.EncodingFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>encodingfilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>

如上,这就是一个简单的过滤器.

J. java web 过滤器跟拦截器的区别和使用

java web 过滤器跟拦截器的区别和使用分别介绍如下:

1、过滤器的使用

Filter主要对客户端的请求和服务器的响应进行过滤,使用场景:

  • 客户端的请求到达服务器,服务器真正开始处理这个请求之前,要经过Filter的过滤

  • 服务器真正的处理完这个请求,生成响应之后,要经过Filter的过滤,才能将响应发送给客户端

作用:可以通过Filter技术,对web服务器管理的所有web资源,例如JSP、Servlet、静态图片文件或静态 html文件等进行拦截,从而实现一些特殊的功能。例如实现URL级别的权限访问控制、过滤敏感词汇、压缩响应信息等一些高级功能。

  • 配置Filter

同开发Servlet一样,写完了类,接下来就是配置了,我们需要在web.xml文件中配置Filter。具体的配置和Servlet配置如出一辙。

<filter>
<filter-name>log</filter-name>
<filter-class>com.jellythink.practise.LogFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>log</filter-name>
<url-pattern>/*</url-pattern>
<dispatcher>REQUEST</dispatcher>
</filter-mapping>

上面配置中比较重要的就是url-pattern和dispatcher了。

过滤类:

public class LogFilter implements Filter
{
private FilterConfig config;

public void init(FilterConfig config)
{
this.config = config;
}

public void destroy()
{
this.config = null;
}

// 这个方法是Filter的核心方法
public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain)
throws IOException, ServletException
{
// 对用户的请求进行处理
ServletContext context = this.config.getServletContext();
long begin = System.currentTimeMillis();

// 输出过滤信息
System.out.println("开始过滤...");
HttpServletRequest hRequest = (HttpServletRequest)request;
System.out.println("Filter已经截获到用户请求的地址:" + hRequest.getServletPath());
// 处理完以后,将请求交给下一个Filter或者Servlet处理
chain.doFilter(request, response);
// 对服务器的响应进行处理
long end = System.currentTimeMillis();
System.out.println("过滤结束");
System.out.println("请求被定为到:" + hRequest.getRequestURI() + "; 所花费的时间为:" + (end - begin));
}
}

2、拦截器的使用:

拦截器的主要作用是拦截用户的请求并进行相应的处理。比如通过它来进行权限验证,或者是来判断用户是否登陆,或者是像12306那样子判断当前时间是否是购票时间。

1.在SpringMVC的配置文件中加上支持MVC的schema

xmlns:mvc="http://www.springframework.org/schema/mvc"
xsi:schemaLocation=" http://www.springframework.org/schema/mvc
http://www.springframework.org/schema/mvc/spring-mvc-3.0.xsd"
下面是声明示例:

<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context"
xmlns:mvc="http://www.springframework.org/schema/mvc"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-3.0.xsd
http://www.springframework.org/schema/mvc
http://www.springframework.org/schema/mvc/spring-mvc-3.0.xsd">

这样在SpringMVC的配置文件中就可以使用mvc标签了,mvc标签中有一个mvc:interceptors是用于声明SpringMVC的拦截器的。