打印 SpringMVC中所有的接口URL

1.配置  simple-test.xml 

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">
    <bean id="requestMappingHandlerMapping" class="org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping"></bean>
    <bean id="requestMappingHandlerAdapter" class="org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter"></bean>
</beans>

2.Junit Test Case

package com.xxx.msa.test;
 
import java.util.Map;
import java.util.Map.Entry;
import org.junit.BeforeClass;
import org.junit.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import org.springframework.web.method.HandlerMethod;
import org.springframework.web.servlet.mvc.method.RequestMappingInfo;
import org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter;
import org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping;
 
public class TestUrl {
     
    @Autowired
    private static RequestMappingHandlerAdapter handlerAdapter;
 
    @Autowired
    private static RequestMappingHandlerMapping handlerMapping;
     
        @BeforeClass
        public static void before(){
            ApplicationContext ctx=new ClassPathXmlApplicationContext(new String[]{
                    "classpath*:config/spring/spring-main.xml", 
                    "classpath*:config/spring/springmvc/springMVC.xml"
                    ,"classpath*:config/spring/simple-test.xml"});
            handlerAdapter=(RequestMappingHandlerAdapter) ctx.getBean("requestMappingHandlerAdapter");
            handlerMapping=(RequestMappingHandlerMapping) ctx.getBean("requestMappingHandlerMapping");
        }
      
       
     
    @Test
    public void testUrls(){
        Map<RequestMappingInfo, HandlerMethod> handlerMethods =handlerMapping
                .getHandlerMethods();
 
        for (Entry<RequestMappingInfo, HandlerMethod> item : handlerMethods
                .entrySet()) {
            RequestMappingInfo mapping = item.getKey();
            HandlerMethod method = item.getValue();
 
            for (String urlPattern : mapping.getPatternsCondition()
                    .getPatterns()) {
                System.out.println(method.getBeanType().getName() + "#"
                        + method.getMethod().getName() + " <-- " + urlPattern);
 
                if (urlPattern.equals("some specific url")) {
                    // add to list of matching METHODS
                }
            }
        }    
         
    }
 
}

获取【下载地址】   QQ: 313596790   【免费支持更新】
三大数据库 mysql  oracle  sqlsever   更专业、更强悍、适合不同用户群体
新录针对本系统的视频教程,手把手教开发一个模块,快速掌握本系统

A 集成代码生成器(开发利器)+快速构建表单;            QQ:313596790
freemaker模版技术 ,0个代码不用写,生成完整的一个模块,带页面、建表sql脚本,处理类,service等完整模块
B 集成阿里巴巴数据库连接池druid;
  数据库连接池  阿里巴巴的 druid。Druid在监控、可扩展性、稳定性和性能方面都有明显的优势
C 集成安全权限框架shiro ;
  Shiro 是一个用 Java 语言实现的框架,通过一个简单易用的 API 提供身份验证和授权,更安全,更可靠
D 集成ehcache 分布式缓存 ;
  是一个纯Java的进程内缓存框架,具有快速、精干等特点,广泛使用的开源Java分布式缓存。
E 集成微信接口开发;    F 图片爬虫技术;   G  SQL 编辑器, 支持复杂sql语句,生成报表,可以导出excel
H websocket及时通讯技术(即时聊天、及时站内信并声音提醒、实时在线管理、websocket及时刷新页面);


你可能感兴趣的:(springMVC)