Как добавить префикс URL в Spring Boot - PullRequest
0 голосов
/ 30 октября 2018

У меня есть приложение Spring Boot 2, в основном используемое для конечных точек REST, и я хочу добавить префикс к конечным точкам с помощью конфигурации бина вместо того, чтобы иметь параметр в файле application.yml, который делает префикс глобальным. т.е. example.com/api/ Я знаю, что вы также можете настроить это с помощью аннотации на классах контроллера, но я хочу знать, можно ли это сделать с помощью bean-компонента .

1 Ответ

0 голосов
/ 30 октября 2018

Вы можете сделать это следующим образом:

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 servletRegistrationBean() {
        ServletRegistrationBean servletRegistrationBean = new ServletRegistrationBean(
                dispatcherServlet(), "/api/");
        servletRegistrationBean.setName(DispatcherServletAutoConfiguration.DEFAULT_DISPATCHER_SERVLET_REGISTRATION_BEAN_NAME);
        return servletRegistrationBean;
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...