`

URLRewriter c url标签

    博客分类:
  • java
阅读更多

1.urlRewriter  用UrlRewriteWrappedResponse 重写了Response的encodeURL方法。

 

2.帮助文档中说明中,jsp 可以通过

    <%

    response.endoceURL("/hello.do?param=1");

 

   %>

或者

 <c:url value="/hello.do?param=1">

说明response会编 url

来由urlRewriter来自动转成你在<outbound-rule>标签中想要的url

 

在standrad中找到org.apache.taglibs.standard.tag.common.core.UrlSupport.class

用jadx  反编译出来的某段源代码如下:

 

   HttpServletResponse response = (HttpServletResponse)pageContext.getResponse();
    result = response.encodeURL(result);

也是response.encodeURL();

 

结论

说明:实现自定义url标签的时候,可以像c:url一样通过调用 response.encodeURL() 来实现urlRewriter的 页面url转换

      

 

       或者自己实现urlRewriter 通过extends HttpServletResponseWrapper

   实现它的encodeurl方法 来重写页面上的url

 

 

简单模拟下:

response
package com.isvi.web.filter;

import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpServletResponseWrapper;

public class URLReWriterResponse extends HttpServletResponseWrapper {

	public URLReWriterResponse(HttpServletResponse response) {
		super(response);
		
	}
	@Override
	public String encodeUrl(String url) {
		System.out.println("encode url");
		return "myURLRewirter 页面 href 转换";
	}
	@Override
	public String encodeURL(String url) {
		// TODO Auto-generated method stub
		System.out.println("encode url 2");
		return "myURLRewirter 页面 href 转换2";
	}

}

 

filter
package com.isvi.web.filter;

import java.io.IOException;

import javax.servlet.FilterChain;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

public class MyURLRewriter extends FilterWrapper {

	@Override
	public void doFilter(HttpServletRequest arg0, HttpServletResponse arg1,
			FilterChain chain) throws IOException, ServletException {
			System.out.println("doFilter");
			URLReWriterResponse ur=new URLReWriterResponse(arg1);
			chain.doFilter(arg0, ur);
		

	}

}

  

 测试jsp

<c:url value="测试"></c:url>
被改写成下边
myURLRewirter 页面 href 转换2

 

分享到:
评论

相关推荐

    URLRewriter重写url 组件 UrlRewriter.dll X86 X64通用

    URLRewriter是一个强大的URL重写组件,用于将不友好的、包含复杂参数的URL转换为更易读、更美观的格式。这个组件适用于各种环境,包括IIS(Internet Information Services)服务器,支持X86和X64架构,提供了一种...

    用Intelligencia.UrlRewriter组件实现URL重写

    Intelligencia.UrlRewriter是一款强大的URL重写组件,它为.NET Framework提供了一个灵活且易于使用的解决方案。下面我们将深入探讨如何使用Intelligencia.UrlRewriter组件来实现URL重写。 首先,`Intelligencia....

    URLRewriter(URL重写)测试代码

    URLRewriter是一个强大的工具,主要用于将复杂的URL转换为更简洁、友好的形式,或者隐藏实际的请求路径,提高网站的可访问性和SEO效果。在Web开发中,URL重写技术通常与Apache服务器上的mod_rewrite模块或者.NET框架...

    Urlrewriter示例URL重写

    C#,ASP.NET,SQLServer C#,ASP.NET,SQLServer C#,ASP.NET,SQLServer C#,ASP.NET,SQLServer C#,ASP.NET,SQLServer

    UrlRewriter.dll 实现URL重写

    UrlRewriter.dll实现URL重写 以及伪静态

    UrlRewritingNet.UrlRewriter.dll 伪静态URL重写

    UrlRewritingNet.UrlRewriter.dll是一个强大的工具,它可以帮助开发者实现这一目标,通过URL重写技术将动态URL转化为静态或伪静态形式。本文将深入探讨这个库的功能、配置以及如何利用它来提升网站性能。 **一、...

    Url重写示例(无后缀Url重写)

    在.NET环境中,UrlRewriter.dll是一个常用的URL重写库,由Ionics Software公司开发。这个库提供了一种方便的方式来实现自定义的URL重写规则,使得开发者可以轻松地将复杂的服务器端路径转换为用户友好的URL。 ...

    URL重写(URLRewriter.dll)

    微软的URLRewriter.dll是一个基于.NET Framework的URL重写库,它提供了一种简单的方式来实现复杂的URL重写规则,使得原本可能包含复杂参数的动态URL可以转换为更友好的、静态化的URL形式。 URLRewriter.dll的核心...

    Intelligencia.UrlRewriter 使用方法

    Intelligencia.UrlRewriter 是一个强大的URL重写库,它为.NET Framework提供了灵活的URL管理功能,使得开发者能够实现更加用户友好的、SEO优化的URL结构。URL重写是Web开发中的一个重要概念,它允许我们将复杂的...

    UrlRewriter(ASP.NET2008 URL 重写)

    **UrlRewriter(ASP.NET 2008 URL 重写)** URL 重写是ASP.NET应用程序中一个重要的技术,它允许开发人员隐藏实际的URL路径,提供更友好的、可读性强的URL,从而改善用户体验并提高搜索引擎优化(SEO)。在ASP.NET ...

    asp.net url重写(URLRewriter)

    ASP.NET URL重写(URLRewriter)是一种技术,用于改变应用程序内部处理的URL,而对外显示的URL则保持用户友好的格式。这种技术在Web开发中广泛应用,因为它能提高用户体验,增强SEO(搜索引擎优化),以及简化网站...

    urlrewriter

    `URLRewriter`是一个强大的URL重写工具,主要用于Web应用程序,尤其是ASP.NET环境。它能够帮助开发者隐藏实际的URL路径,使得网站对外显示为静态页面,而实际上可能是在执行动态的ASP、ASP.NET或其他服务器端脚本。...

    URLRewriter asp.net重写url

    URLRewriter是一个强大的ASP.NET模块,它允许开发者对应用程序中的URL进行重写和转换,以实现更友好的、搜索引擎优化(SEO)的网址结构。在ASP.NET中,URL重写通常用于将复杂的、参数化的URL转换为简洁的、有意义的...

    url重写Intelligencia.UrlRewriter.dll

    标题中的“url重写Intelligencia.UrlRewriter.dll”指的是使用Intelligencia公司开发的UrlRewriter库来实现ASP.NET应用程序中的URL重写功能。URL重写是一种优化网站技术,它允许开发者隐藏实际的URL结构,提供更友好...

    net用url重写URLReWriter实现任意二级域名

    标题与描述均提到了在.NET框架中利用URL重写(URL Rewriting)技术,通过URLReWriter组件实现任意二级域名的映射与处理。本文将深入解析这一技术的关键概念、实施步骤以及具体应用场景,旨在为.NET开发人员提供一个...

    URL重写(UrlRewriter)+ 微软官方网DLL

    URL重写(UrlRewriter)是ASP.NET应用中一个重要的技术,主要用于优化网站的URL结构,使其更加用户友好和搜索引擎优化。微软官方提供了相应的DLL文件支持这一功能,使得开发者能够轻松地在自己的应用程序中实现URL...

    UrlRewriter2_51

    《UrlRewriter2_51:理解与应用URL重写技术》 UrlRewriter2_51是一款专门用于处理和管理URL重写的工具,它基于ASP.NET环境,为开发者提供了强大的URL管理功能,使得网站的URL更加友好、简洁且易于理解。在本文中,...

    URLRewriter

    URLRewriter是一个功能强大的URL重写工具,主要用于改善和优化网站的URL结构,使其更加用户友好和搜索引擎友好。在互联网领域,URL的结构和形式对于网站的可访问性、用户体验以及SEO(搜索引擎优化)都具有重大影响...

    UrlReWriter

    UrlReWriter是一个重要的Web开发工具,它主要用于处理和重写URL,从而实现更灵活的网址管理和优化。在ASP.NET环境中,UrlReWriter组件扮演着关键角色,帮助开发者创建更加用户友好的、SEO(搜索引擎优化)友好的URL...

Global site tag (gtag.js) - Google Analytics