eg:两个 RequestMapping"/table""/user"。想同一改成"/v1/table""/v1/user"
eg:两个 RequestMapping"/table""/user"。想同一改成"/v1/table""/v1/user"
|
gejun123456Nov 21, 2018
1
写个 java main 函数 正则表达式 匹配替换
|
|
2
如果所有的 controller 都是这个前缀开头,可以 server.servlet.context-path 加这个配置
|
|
ClutchBearNov 21, 2018
4
我们这里的解决方式是:
定义一个静态变量 path=v1 这 20 个都用这个镜头变量拼接, 后面再需要改成 v2 的话, 只需要改 path 的赋值就行. |
|
xiluoNov 21, 2018
5
https://stackoverflow.com/questions/28006501/how-to-specify-prefix-for-all-controllers-in-spring-boot
You can provide a mapping to root context path of your spring boot application to /api/* in your custom configuration. ```java import org.springframework.boot.autoconfigure.web.DispatcherServletAutoConfiguration; import org.springframework.boot.context.embedded.ServletRegistrationBean; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.web.servlet.DispatcherServlet; @Configuration public class DispatcherServletCustomConfiguration { @Bean public DispatcherServlet dispatcherServlet() { return new DispatcherServlet(); } @Bean public ServletRegistrationBean dispatcherServletRegistration() { ServletRegistrationBean registration = new ServletRegistrationBean( dispatcherServlet(), "/api/"); registration.setName(DispatcherServletAutoConfiguration.DEFAULT_DISPATCHER_SERVLET_REGISTRATION_BEAN_NAME); return registration; } } ``` or add this to your application.properties in src\main\resources folder ``` server.contextPath=/api/* ``` |
|
sss007Nov 21, 2018
6
zuul?
|
|
7
咳咳,如果只有 20 个,并且不会频繁改动的话,在 idea 里 command+shift+R (快捷键可能不一样)在整个工程里搜索替换一下就可以了啊。
|
|
Guozi1989Nov 21, 2018
8
20 个应该不多,一个个的加吧。如果全部要替换的话就是 `server.contextPath=/V1/*`
|
|
quickmaNov 21, 2018
9
对修改关闭,对拓展开放
|
|
StevenTongNov 21, 2018
10
整个工程替换就加 gateway 不是的话 批量替换
|
|
12
可以重写 RequestMappingHandlerMapping 的 registerHandlerMethod,在里面判断哪些 controller 需要修改,然后创建一个新的 RequestMappingInfo 代替原来的。
|
|
deweixuNov 21, 2018
13
用 nginx 反向代理,在 nginx 配置里加,手动加狗头。
|
|
ioiogooNov 22, 2018
14
如果是全局的前缀的话,在配置文件里面加
server.servlet.path=/v1,适用于 spring boot |
|
571726193Nov 23, 2018
15
我记得继承是可以的 因为我上一家公司就是这样的 用继承解决的
|