• springMVC学习之url重写:urlrewrite with tuckey UrlRewriteFilter


    在开发网站时地址栏的一些信息是我们不希望让客户看到,所以在开发时候就会涉及到url重写的问题。

    下面介绍一种常用的url地址重写的方法。

    1.利用maven下载相关jar文件,pom文件配置如下:

    <dependency>
        <groupId>org.tuckey</groupId>
        <artifactId>urlrewritefilter</artifactId>
        <version>4.0.4</version>
    </dependency>

    2.在web.xml中配置UrlRewriteFilter,配置如下:

    <filter>
      <filter-name>UrlRewriteFilter</filter-name>
      <filter-class>org.tuckey.web.filters.urlrewrite.UrlRewriteFilter</filter-class>
      <!-- 因为urlrewrite.xml只能在web-inf下,所以我们这里可以省略掉urlrewrite.xml的路径配置。 -->
      <init-param>
        <param-name>logLevel</param-name>
        <param-value>WARN</param-value>
      </init-param>
    </filter>
      <filter-mapping>
      <filter-name>UrlRewriteFilter</filter-name>
      <url-pattern>/*</url-pattern>
      <dispatcher>REQUEST</dispatcher>
      <dispatcher>FORWARD</dispatcher>
    </filter-mapping>

    3.添加urlrewirte.xml文件,将文件放在WEB-INF目录下(貌似该文件只能放在WEB-INF下)。配置如下:

    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE urlrewrite PUBLIC "-//tuckey.org//DTD UrlRewrite 3.2//EN" "\urlrewrite3.2.dtd">
    <urlrewrite>
      <rule>
        <note>重写loign.jsp成login.html</note>
        <!-- 对应controller中redireact的路径 -->
        <from>login.html</from>
        <!-- 对应实际工程中jsp文件 -->
        <to type="forward">/login.jsp</to>
      </rule>
    </urlrewrite>

    4.程序controller中的返回内容要与<from>中的内容一致,比如下列代码片返回值得要与urlrewrite中的一致:

    @RequestMapping(value="login.do")
    public String login(HttpServletRequest request, HttpServletResponse response, Role role) throws Exception {
    if (userService.selectRoleByNameAndPassword(role)) {
        return "index";
      } else {
        return "redirect:login.html";
      }
    }

  • 相关阅读:
    逆向笔记
    后缀名验证
    hook 虚表
    findhex
    敏捷开发模式下如何划定测试范围
    通过数据库来看互联网系统架构演变
    论技术人的总结习惯
    08.基于IDEA+Spring+Maven搭建测试项目--Maven的配置文件settings.xml
    07.基于IDEA+Spring+Maven搭建测试项目--logback.xml配置
    06.基于IDEA+Spring+Maven搭建测试项目--dubbo-consumer.xml配置
  • 原文地址:https://www.cnblogs.com/michaelShao/p/5488724.html
Copyright © 2020-2023  润新知