《转》java URL重写
2013-04-16 10:42
155 查看
文章来源:http://www.it300.com/article-5319.html
现在url重写技术用的越来越广泛了,很高兴今天和各位网友分享一下:
首先我们要从网上下一个UrlReWriterjar包 现在地址进不了,我这里有一个3.0版本的,文章底有下载地址,大家可以去下载
引用jar包后,我们需要配制web.xml配制文件,配制如下:
<filter>
<filter-name>UrlRewriteFilter</filter-name>
<filter-class>org.tuckey.web.filters.urlrewrite.UrlRewriteFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>UrlRewriteFilter</filter-name>
<url-pattern>/*</url-pattern>
<dispatcher>REQUEST</dispatcher>
<dispatcher>FORWARD</dispatcher>
</filter-mapping>
新建一个urlrewrite.xml文件
我们再新建test.html
<html>
<body>
test.html
</body>
</html>
新建 page.html
<html>
<body>
page.html
</body>
</html>
新建MyName.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8" %>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
</head>
<body>
我的姓名是:<%=request.getParameter("name")%>
</body>
</html>
我们实现的效果是输入http://localhost:8080/MyUrl/name/chenjie 达到效果http://localhost:8080/MyUrl/MyName.jsp?name=chenjie
输入http://localhost:8080/MyUrl/test.html 跳转到http://localhost:8080/MyUrl/page.html
URL重写我们最重要是正则表达式的写法,我们随便也介绍一下正则的用法
package com.testMatch; import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class MyMatch {
public static void main(String[] args) {
/** 方法一
//创建pattern对象,加载正则表达式
Pattern p=Pattern.compile("^t.*java");
//将需要的匹配的字符串加载到Matcher对象、
Matcher m=p.matcher("think in java");
boolean b=m.matches();
System.out.println(b);
**/
//".代表一任意一个字符"
//"^"1.在字符串中代表开始 2.在[]代表取反
//"$"表示结尾
//"|"表示或者,^[a|b]表示以a或b开头^[1][358]
//"[]"表示选择,匹配手机号码:^[1][358][0-9]{9}
//"*"表示前面的字符可以出现0次,1次,或多次
//"+"表示前面的字符至少出现一次或多次
//"?"表示前面的字符可以出现0或1次
//"{}"允许前面的字符可以出现多少次
boolean b=Pattern.matches("^t.*java","think in java");
}
}
现在url重写技术用的越来越广泛了,很高兴今天和各位网友分享一下:
首先我们要从网上下一个UrlReWriterjar包 现在地址进不了,我这里有一个3.0版本的,文章底有下载地址,大家可以去下载
引用jar包后,我们需要配制web.xml配制文件,配制如下:
<filter>
<filter-name>UrlRewriteFilter</filter-name>
<filter-class>org.tuckey.web.filters.urlrewrite.UrlRewriteFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>UrlRewriteFilter</filter-name>
<url-pattern>/*</url-pattern>
<dispatcher>REQUEST</dispatcher>
<dispatcher>FORWARD</dispatcher>
</filter-mapping>
新建一个urlrewrite.xml文件
01 | <?xml version= "1.0" encoding= "utf-8" ?> |
02 | <!DOCTYPE urlrewrite PUBLIC "-//tuckey.org//DTD UrlRewrite 3.0//EN" "http://tuckey.org/res/dtds/urlrewrite3.0.dtd" > |
03 | <urlrewrite> |
04 | <rule> |
05 | <from>/test.html</from> |
06 | <to type= "redirect" >%{context-path}/page.html</to> |
07 | </rule> |
08 | <rule> |
09 | <from>/name/(.*)</from> |
10 | <to>/MyName.jsp?name=$ 1 </to> |
11 | </rule> |
12 | </urlrewrite> |
<html>
<body>
test.html
</body>
</html>
新建 page.html
<html>
<body>
page.html
</body>
</html>
新建MyName.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8" %>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
</head>
<body>
我的姓名是:<%=request.getParameter("name")%>
</body>
</html>
我们实现的效果是输入http://localhost:8080/MyUrl/name/chenjie 达到效果http://localhost:8080/MyUrl/MyName.jsp?name=chenjie
输入http://localhost:8080/MyUrl/test.html 跳转到http://localhost:8080/MyUrl/page.html
URL重写我们最重要是正则表达式的写法,我们随便也介绍一下正则的用法
package com.testMatch; import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class MyMatch {
public static void main(String[] args) {
/** 方法一
//创建pattern对象,加载正则表达式
Pattern p=Pattern.compile("^t.*java");
//将需要的匹配的字符串加载到Matcher对象、
Matcher m=p.matcher("think in java");
boolean b=m.matches();
System.out.println(b);
**/
//".代表一任意一个字符"
//"^"1.在字符串中代表开始 2.在[]代表取反
//"$"表示结尾
//"|"表示或者,^[a|b]表示以a或b开头^[1][358]
//"[]"表示选择,匹配手机号码:^[1][358][0-9]{9}
//"*"表示前面的字符可以出现0次,1次,或多次
//"+"表示前面的字符至少出现一次或多次
//"?"表示前面的字符可以出现0或1次
//"{}"允许前面的字符可以出现多少次
boolean b=Pattern.matches("^t.*java","think in java");
}
}
相关文章推荐
- 地址重写--Java中urlrewriter的使用
- javaweb之Session实现简单的购物(URL重写。Cookie重写指定有效日期)和简单的验证结论
- java中的url重写
- 求类似javaniu的url地址伪静态重写
- 【Java.Web】Session —— 示例 —— JSP —— 登陆功能及重写URL
- java url重写
- java url 重写3钟方法
- ruby重写java对URL短地址压缩算法微博短地址原理解析
- Java里方法的重载与重写
- 我理解的Java中重载与重写
- java中重写Comparator对两个list集合排序
- 技巧/诀窍:在ASP.NET中重写URL (转)
- java override equals(重写equals)
- java项目配置jdbc.porperties时要注意jdbc.url的配置方式
- [java][31]子类重写父类加@Override注解
- 在ASP.NET中重写URL
- 【Java】【URL】Java URL类解析
- Java重写与重载
- java中重载与重写的区别
- 【Java】一个简单的重写equals方法样例