iis怎么部署网站用dz做网站怎么设置数据库
news/
2025/9/24 2:14:11/
文章来源:
iis怎么部署网站,用dz做网站怎么设置数据库,nodejs可以做企业网站吗,做网站seo的公司哪家好Filter 可认为是 Servlet的一种 “ 加强版 ”#xff0c;它主要用于对用户请求进行预处理#xff0c; 也可以对HttpServletResponse 进行后处理#xff0c;是个典型的处理链。Filter 也可对用户请求生成响应#xff0c;这一 点与Servlet 相同#xff0c; 但实际上很少会使…Filter 可认为是 Servlet的一种 “ 加强版 ”它主要用于对用户请求进行预处理 也可以对HttpServletResponse 进行后处理是个典型的处理链。Filter 也可对用户请求生成响应这一 点与Servlet 相同 但实际上很少会使用Filter向用户请求生成晌应。 使用Filter完整的流程是Filter对用户请求进行预处理 接着将请求交给Servlet 进行处理并生成响应 最后Filter再对服务器响应进行后处理。 Filter有如下几个用处。》在HttpServletRequest到达Servlet之前 拦截客户的HttpServletRequest。》根据需要检查HttpServletRequest 也可以修改HttpServletRequest头和数据。》在HttpServletResponse到达客户端之前 拦截HttpServletResponse。》根据需要检查HttpServletResponse 也可以修改HttpServletResponse头和数据。Filter有如下几个种类。》用户授权的Filter: Filter负责检查用户请求 根据请求过滤用户非法请求。 〉日志Filter 详细记录某些特殊的用户请求。》负责解码的Filter 包括对非标准编码的请求解码。〉能改变XML内容的XSLTFilter等。》Filter可负责拦截多个请求或响应一个请求或响应也可被多个Filter拦截。 创建Filter只需两个步骤 1、创建Filter处理类 2、web.xml中配置Filter 1、创建Filter处理类 创建 Filter 必须实现 javax.servlet.Filter 接口 在该接口中定义了如下三个方法。》 void init ( FilterConfig config 用于完成 Filter 的初始化。》 void destroy 用于 Filter 销毁前 完成某些资源的回收。》 void doFilter CServletRequest request, ServletResponse response,FilterChain chain 实现过滤功能 下面介绍一个日志 Filter 这个 Filter 负责拦截所有的用户请求 并将请求的信息记录在日志中 package servlet;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;
import javax.servlet.annotation.WebFilter;
import javax.servlet.http.HttpServletRequest;WebFilter(filterNamelog,urlPatterns/*)
public class LogFilter implements Filter{Overridepublic void destroy() {System.out.println(执行filter的destroy方法);}Overridepublic void doFilter(ServletRequest request, ServletResponse response, FilterChain chain)throws IOException, ServletException {System.out.println(执行filter的doFilter方法);HttpServletRequest hrequest (HttpServletRequest) request;System.out.println(用户请求的地址为hrequest.getServletPath());chain.doFilter(request, response);}Overridepublic void init(FilterConfig config) throws ServletException {System.out.println(执行filter的init方法);}} 2、配置Filter 前面已经提到 Filter 可以认为是 Servlet 的 “ 增强版”因此配置 Filter 与配置 Servlet 非常相似都需要配置如下两个部分。 》配置 Filter 名。》配置 Filter 拦截 URL 模式。区别在于 Serviet 通常只配置一个 URL而Filter 可以同时拦截多个请求的 URL。因此 在配置Filter 的 URL 模式时通常会使用模式字符串 使得 Filter 可以拦截多个请求。 与配置 Serviet 相似的是 配置 Filter 同样有两种方式。 》在 Filter 类中通过注解进行配置。》在 web.xml 文件中通过配置文件进行配置。上面 Filter 类的粗体字代码使用Webfilter 配置该 Filter 的名字为 log它会拦截向/*发送的所有的请求。 Webfilter 修饰一个 Filter 类 用于对 Filter 进行配置 它支持如下图所示的常用属性 在 web.xml 文件中配置 Filter 与配置 Serviet 非常相似需要为 Filter 指定它所过滤的 URL并且也 可以为 Filter 配置参数。 filterfilter-namelog/filter-namefilter-classservlet.LogFilter/filter-class/filterfilter-mappingfilter-namelog/filter-nameurl-pattern/*/url-pattern/filter-mapping Filter的作用 3、使用URL Rewrite实现网站伪静态 xxx.jsp?paramvalue ...大部分搜索引擎都会优先考虑收录静态的HTML页面而不是这种动态的.jsp、.php页面。但实际上绝大部分网站都是动态的不可能全部是静态的HTML页面因此互联网上的大部分网站都会与虑使用伪静态一一就是将飞jsp、.php 这种动态U虹伪装成静态的HTML页面。对于JavaWeb应用来说要实现伪静态非常简单可以通过Filter拦截所有发向.html请求然1;;按某种规则将请求forward到实际的.jsp页面即可。现有的URL Rewrite开源项目为这种思路提供了实现使用URL Rewrite实现网站伪静态也很简单。下面详细介绍如何利用URL Rewrite实现网站伪静态。登录http://www.tuckey.org/urlrewrite/站点下载Uri Rewrite 的最新版本本书成书时该项目的最新版本是4.0.3建议读者也下载该版本的Uri Rewrite。 下载URL Rewrite直接下载它的urlrewritefilter-4.0.3.jar即可并将该JAR包复制到Web应用的WEB-INF\lib目录下。在web.xml文件中配置启用URL Rewrite Filter在web.xml文件中增加如下配置片段。 filterfilter-nameUrlRewriteFilter/filter-namefilter-classorg.tuckey.web.filters.urlrewrite.UrlRewriteFilter/filter-class/filterfilter-mappingfilter-nameUrlRewriteFilter/filter-nameurl-pattern/*/url-pattern/filter-mapping 上面的配置片段指定使用URL Rewrite Filter拦截所有的用户请求。 在应用的WEB-INF 路径下增加urlrewrite.xml文忡该文件定义了伪静态l映射规则这份伪静态规则是基于正则表达式的。 下面是本应用所使用的urlrewrite.xml 伪静态规则文件。 ?xml version1.0 encodingUTF-8?
!DOCTYPE urlrewrite PUBLIC -//tuckey.org//DTD UrlRewrite 3.2//EN http://tuckey.org/res/dtds/urlrewrite3.2.dtdurlrewriterulefrom/userinf-(\w).html/fromto typeforward/userinf.jsp?username$1/to/rule/urlrewrite 上面的规则文件中只定义了一个简单的规则所有发向/userinf-(\w*).html的请求都将被forward 到userinfjsp 页面 并将\w*正则表达式所匹配的内容作为usemame 参数值。根据这个伪静态规则 需要为该应用提供一个userinf.jsp 页面 转载于:https://www.cnblogs.com/lidian/p/8918740.html
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/914572.shtml
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!