目录
序言
一个接口如何实现n个路径访问
编写controller方法
启动测试
原因解释
一个接口请求方式不限定
编写controller
测试使用
原因解释
序言
好久不见大家,最近特别忙,所以接近两个月没有写博客,还有十来分钟上班,刚好这个空隙整理一下之前一个人问我的问题,如何给一个接口设置不同的路径
大致上就是说,有两个不同的调用方,要实现相同的功能,使用一个接口就行,但是接口规范全都是对方定的,这就意味着,一个功能,不同的调用方, 还要满足不同的路径,不同的请求方式,于是问题出现了,该怎么实现呢?
有的人可能会说,不就是一个接口么,我再写一个,调用同一个service就行了,是的,这种方法可行,但是如果这种接口出现的很多呢?是不是不合适
so,我们来看看怎么写到一起
其实使用方法很简单
一个接口如何实现n个路径访问
编写controller方法
@GetMapping(value = {"/url1", "/url2", "/url3"})
public String testUrl(HttpServletRequest request) {
System.out.println("rul request");
return request.getRequestURI();
}
注意看我给vale的声明,还不是明白了该怎么写?
启动测试
看,是不是就实现了一个接口,但是可以指定n个路径?
原因解释
我们来看看注解们大家就明白了
看,全部都是数组的形式,所以啦,当然可以同事支持多个~
一个接口请求方式不限定
说完了一个接口n个地址支持,我们接着来说一个接口,不管是get还是post都可以访问的方式
编写controller
其实很简单,我们把具体的请求方式换成@RequestMapping就行了
@RequestMapping(value = {"/url1", "/url2", "/url3"})
public String testUrl(HttpServletRequest request) {
System.out.println("rul request");
return request.getRequestURI();
}
测试使用
看,是不是post也可以访问
原因解释
这么写当然不是我瞎编的,毕竟我们代码也写了,测试也测试了,都是ok的,至于为什么这么写,其实看一下 @RequestMapping 注解就知道了
看我打的断点的两个地方,看,一个是value,一个是 method,都是数组,说明可以多个值,是不是明白了,跟上面的 @GetMapping 一样其实
好了,本次的分享到此结束,很简单但是可能很实用的一个小用法~