java url 重新

1.导入urlrewritefilter-4.0.3.jar

2.引用jar包后,我们需要配置web.xml配置文件,配置如下:

<filter-name>UrlRewriterFilter</filter-name>
<filter-class>org.tuckey.web.filters.urlrewrite.UrlRewriteFilter</filter-class>


<filter-name>UrlRewriterFilter</filter-name>
<url-pattern>/*</url-pattern>
<dispatcher>REQUEST</dispatcher>
<dispatcher>FORWARD</dispatcher>

3.新建一个urlrewriter.xml文件,放在WEB-INF


/test.html
%{context-path}/page.html


/name/(.*).html
/MyName.jsp?name=$1

4.新建MyName.jsp

My name is :<%=request.getParameter("name") %>

这时,我们实现的效果输入http://localhost:8081/UrlReWriter/name/zhangsan.html
就到达了http://localhost:8081/UrlReWriter/MyName.jsp?name=zhangsan 的页面

里面的.xml正则表达式写法
package com.testMatch;

import java.util.regex.Matcher;
import java.util.regex.Pattern;

public class MyMatch{
public static void main(String args[]){
// 方法一:
// 创建pattern对象,加载正则表达式
//以下正则表达式的意思是:以t开头,并且可以出现任意字符多次,最后有java
Pattern p = Pattern.compile(“[t|a].*java$“);
//将需要的匹配的字符串加载到Match对象
Matcher m = p.matcher(“think in java”);
Matcher m1 = p.matcher(“ahanks java”);
Matcher m2 = p.matcher(“t地方java”);
boolean b = m.matches();
boolean b1 = m1.matches();
boolean b2 = m2.matches();
System.out.println(b);
System.out.println(b1);
System.out.println(b2);
//. : 代表任意一个字符
//
: 在字符串中代表开始;在p[]代表取反
//$ : 表示结尾
//| : 表示或者;
// [a|b]表示以a或b开头
//[] : 表示选择;匹配手机号码:
[1][358][0-9]{9}
//* : 表示前面的字符可以出现0次,1次,或多次
//+ : 表示前面的字符至少出现一次或多次
//?: 表示前面的字符可以出现0次或1次
//{} : 允许前面的字符可以出现多少次
boolean c = Pattern.matches(“[1][358][0-9]{9}$“, “13599999999”);
System.out.println(c);
boolean d = Pattern.matches(“
a+b?“,“abbb”);
System.out.println(d);
}

}

你可能感兴趣的:(java url 重新)