springmvc获取所有链接信息

springmvc获取所有链接信息

预期结果:
/auth/groups/save_menu 保存组的菜单
/auth/menus/add 添加菜单
/auth/menus 获取菜单列表
/auth/menus/delete 删除菜单

代码:

public class AuthorityInitializer {
@Autowired
private RequestMappingHandlerMapping handlerMapping;
@Autowired
private AuthService authService;

public void init(){
Map<RequestMappingInfo, HandlerMethod> map = handlerMapping.getHandlerMethods();
Set mappings = map.keySet();

for(RequestMappingInfo info : mappings) {

Set patternSet = new HashSet();

PatternsRequestCondition condition = info.getPatternsCondition();
for (String pattern : condition.getPatterns()) {
if(StringUtils.endsWith(pattern, "/")){
patternSet.add(pattern.substring(0, pattern.length()-1));
}else{
patternSet.add(pattern);
}
}

for (String patt : patternSet) {
String value = patt;
String name = info.getName();
if(StringUtils.isBlank(name) ){
name = value;
}
//保存
authService.saveAuthority(value, name);
}
}
}
}

spring配置:


posted @ 2017-10-11 18:18  CalronLoveRonnie  阅读(299)  评论(0)    收藏  举报
AmazingCounters.com