Использование пользовательской HandlerMethodMappingNamingStrategy в Spring MVCJAVA

Программисты JAVA общаются здесь
Гость
Использование пользовательской HandlerMethodMappingNamingStrategy в Spring MVC

Сообщение Гость »

В Spring MVC каждой конечной точке автоматически присваивается имя с помощью HandlerMethodMappingNamingStrategy, по умолчанию это делается с помощью RequestMappingInfoHandlerMethodMappingNamingStrategy, который будет использовать заглавные буквы контроллера, знак решетки (#) и затем имя метода конечной точки.
Таким образом, контроллеру с именем HomeController, который имеет индекс метода, автоматически будет присвоено имя отображения HC#index.
Я хочу предоставить свою собственную стратегию, в которой используется ПОЛНОЕ имя контроллера, чтобы оно генерировало имя сопоставления HomeController#index.
Документация Spring MVC довольно ясна и гласит:

Вот как это работает. При запуске каждому @RequestMapping назначается
имя по умолчанию через HandlerMethodMappingNamingStrategy, чья
реализация по умолчанию использует заглавные буквы класса и
имя метода (например, метод getThing в ThingControllerстановится "TC#getThing"). Если есть конфликт имен, вы можете использовать
@RequestMapping(name=".."), чтобы назначить явное имя или реализовать
свою собственную стратегию HandlerMethodMappingNamingStrategy.

Я создал свой собственный класс, реализующий HandlerMethodMappingNamingStrategy, но понятия не имею, как Spring MVC теперь может его использовать.
Единственное место, где я вижу стратегию по умолчанию, упомянутую в коде Spring, - это абстрактный класс, который напрямую создает экземпляр стратегии по умолчанию:
public abstract class RequestMappingInfoHandlerMapping extends AbstractHandlerMethodMapping {

...other code

protected RequestMappingInfoHandlerMapping() {
setHandlerMethodMappingNamingStrategy(new RequestMappingInfoHandlerMethodMappingNamingStrategy());
}

...other code

}


Подробнее здесь: https://stackoverflow.com/questions/781 ... spring-mvc

Вернуться в «JAVA»