Servlet与过滤器

ServletFilter有什么区别?您建议使用什么来授权页面?



一只斗牛犬
浏览 339回答 3
3回答

白猪掌柜的

Filter当您要根据特定条件过滤和/或修改请求时,请使用。使用Servlet时要控制,预处理和/或后处理请求。在Java EE的教程中提到有关筛选如下:过滤器是可以转换请求或响应的标头和内容(或两者)的对象。过滤器与Web组件的不同之处在于,过滤器本身通常不会创建响应。相反,过滤器提供的功能可以“附加”到任何种类的Web资源。因此,过滤器不应依赖于其充当过滤器的Web资源。这样,它可以由多种类型的Web资源组成。过滤器可以执行的主要任务如下:查询请求并采取相应措施。阻止请求和响应对进一步传递。修改请求标头和数据。您可以通过提供请求的自定义版本来实现。修改响应头和数据。您可以通过提供响应的自定义版本来执行此操作。与外部资源进行交互。对于授权,a Filter是最合适的。这是过滤器如何检查登录用户请求的基本启动示例:public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws ServletException, IOException {    if (((HttpServletRequest) request).getSession().getAttribute("user") == null) {        // User is not logged in. Redirect to login page.        ((HttpServletResponse) response).sendRedirect("login");    } else {        // User is logged in. Just continue with request.        chain.doFilter(request, response);    }}

慕田峪4524236

筛选器最适合授权。这是因为可以将它们配置为在站点的所有页面上运行。因此,您只需要一个过滤器即可保护所有页面。

一只甜甜圈

使用过滤器可以提高Servlet的性能-当请求到来时,我们可以根据请求执行预处理,如果请求满足,则可以转发到servlet,否则向消息提供消息给客户端,以在请求中提供适当的信息。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java