JAVA实现强大的URL规则重写地址方式
来源: 阅读:1970 次 日期:2015-04-16 11:28:58
温馨提示: 小编为您整理了“JAVA实现强大的URL规则重写地址方式”,方便广大网友查阅!

这个URL规则方式重写URL地址是才用正则表达式的方式来做的!只要通过设置规则参数和url规则,如:

{channel}/{type}/{date}/{id}.html

这样我们就可以通过我开发这个工具来进行重写地址了,

如果你以前用的是

p=index&type=template&date=20130405&id=1

通过编码可以得到:

/index/template/20130405/1.html

当然 也可以通过解码得到真正的URL地址,使用此工具类,Java的网站,URL地址的SEO优化变得so Easy

写一个Filter,是不是就可以了,好简单! 实现的代码如下:

01

package com.wuwei.test;

02

03

import org.marker.web.url.Parameter;

04

import org.marker.web.url.URLRewrite;

05

/**

06

* 测试URL规则

07

* @author marker

08

* */

09

public class Test {

10

11

public static void main(String[] args) {

12

URLRewrite re = new URLRewrite();

//设置规则参数

16

re.ruleParameter.put("{channel}", new Parameter("p","{channel}","([a-zA-Z_0-9]+)"));

17

re.ruleParameter.put("{type}", new Parameter("type","{type}","([a-zA-Z_0-9]+)"));

18

re.ruleParameter.put("{id}", new Parameter("id","{id}","([0-9]+)"));

19

20

21

//初始化两个规则

22

re.putRule("列表","{channel}.html");

23

re.putRule("内容","{channel}/{type}/cms-thread-{id}.html");

24

25

26

27

//文章类型的地址

28

String url ="p=index&type=article&id=1";

29

System.out.println("访问的地址:"+url);

30

System.out.println("-----------------------");

31

String gourl = re.encoder(url);

32

System.out.println("URL编码:"+gourl);

33

gourl = re.decoder(gourl);

34

System.out.println("URL解码:"+gourl);

35

36

System.out.println("==========================");

37

38

//栏目类型的地址

39

url ="p=about";

40

System.out.println("访问的地址:"+url);

41

System.out.println("-----------------------");

42

gourl = re.encoder(url);

43

System.out.println("URL编码:"+gourl);

44

gourl = re.decoder(gourl);

45

System.out.println("URL解码:"+gourl);

46

47

}

48

}

更多信息请查看IT技术专栏

更多信息请查看技术文章
由于各方面情况的不断调整与变化, 提供的所有考试信息和咨询回复仅供参考,敬请考生以权威部门公布的正式信息和咨询为准!
关于我们 | 联系我们 | 人才招聘 | 网站声明 | 网站帮助 | 非正式的简要咨询 | 简要咨询须知 | 加入群交流 | 手机站点 | 投诉建议
工业和信息化部备案号:滇ICP备2023014141号-1 云南省教育厅备案号:云教ICP备0901021 滇公网安备53010202001879号 人力资源服务许可证:(云)人服证字(2023)第0102001523号
云南网警备案专用图标
联系电话:0871-65317125(9:00—18:00) 获取招聘考试信息及咨询关注公众号:hfpxwx
咨询QQ:526150442(9:00—18:00)版权所有:
云南网警报警专用图标
Baidu
map