Подтвердить что ты не робот

Значение EnableWebMvc для аннотации

Я читаю javadoc о @EnableWebMvc.

Но я не понимаю, что означает эта аннотация?

Можете ли вы ясно выразить это?

4b9b3361

Ответ 1

Когда вы используете Java-код (в отличие от XML) для настройки вашего приложения Spring, @EnableWebMvc используется для включения Spring MVC. Если вы еще не знакомы с поддержкой Spring для конфигурации Java, это хорошее место для запуска.

@EnableWebMvc эквивалентен <mvc:annotation-driven /> в XML. Он позволяет поддерживать @Controller -аннотированные классы, которые используют @RequestMapping для сопоставления входящих запросов с определенным методом. Вы можете прочитать подробную информацию о том, что она настраивает по умолчанию, и как настроить конфигурацию в справочной документации .

Ответ 2

Добро пожаловать в мир Spring. Вам нужно понять, прежде чем вы узнаете, что означает аннотация @EnableWebMVC.

Spring традиционно поддерживает два типа конфигураций:

Эти аннотации, по сути, реализованы как часть MVC Java Config Design.

Рассмотрим простой класс:

@EnableWebMvc
@Configuration
public class WebConfig {
}

Нет базовых классов. Нет spring beans в поле зрения.. Хммм..

Давайте посмотрим немного дальше:

  • Что это действительно обеспечивает?

Ну, чтобы немного вас утомлять, он предоставляет много вещей вроде:

и еще несколько.

Ахаха... Но ваше приложение работает с ним правильно. Итак, где волшебство...?

@EnableWebMVC <---- What behind this..?

Это за ней:

@Retention(RetentionPolicy.RUNTIME)
@Import(DelegatingWebMvcConfiguration.class)
@Target(ElementType.TYPE)
public @interface EnableWebMvc {
}

Посмотрите, теперь вы подумали бы, как бессмысленно использовать @EnableWebMVC. Вы бы предпочли:

  • Расширить WebMvcConfigurationSupport
  • Переопределить @Bean и другие доступные методы

Вы можете прочитать:

Надеюсь, это поможет.:)

Ответ 3

Добавление этой аннотации в класс @Configuration импортирует конфигурацию MVC Spring из WebMvcConfigurationSupport