访问路径处理类

[color=red][size=x-large]qinya / visit/topic /a /view[/size][/color]

通过request的getServletPath() 获取<url-pattern>("/visit/topic")
getInfo() 获取“*”

package com.toolsbean;

public class PathHandler {
public String[] dividePath(String servletPath,String pathInfo){
String[] subPaths=null;
if(servletPath!=null&&pathInfo!=null){
String temp1=StringHandler.delBlank(servletPath.substring(1)); //去掉路径中的首字符“/”
String temp2=StringHandler.delBlank(pathInfo.substring(1));

String[] subtemp1=divideSub(temp1);
String[] subtemp2=divideSub(temp2);

if(subtemp1!=null&&subtemp2!=null){
subPaths=new String[4];
subPaths[0]=subtemp1[0]; //存储前、后操作的标识:前台-visit;后台-admin
subPaths[1]=subtemp1[1]; //存储模块:如board表示版块模块、topic表示主题模块等
subPaths[2]=subtemp2[0]; //存储权限标识:a-所有、b-自己以上、c-版主以上、
subPaths[3]=subtemp2[1]; //存储操作:list-列表显示、add-添加
}
}
return subPaths;
}
/**
* @功能:验证路径是否为"A/B"形式,并以"/"符号分割该路径
* @参数:temp为待操作的路径
* @返回:字符串数组,存储分割后的单元路径
*/
private String[] divideSub(String temp){
int start=temp.indexOf("/"); //获取路径中第一个"/"符号位置
int end=temp.lastIndexOf("/"); //获取路径中最后一个"/"符号位置
if(start==end){ //若相等,则表示路径中只有一个"/"符号
String[] subtemp=temp.split("/"); //以"/"符号分割路径
if(subtemp.length==2&&!subtemp[0].equals("")&&!subtemp[1].equals("")) //如果路径为"A/B"形式
return subtemp;
}
return null;
}
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值