Пример Spring MVC ResourceBundleViewResolver

Spring MVC ResourceBundleViewResolver пример

В Spring MVCResourceBundleViewResolver используется для разрешения «представления с именем» на основе компонентов представления в файле «.properties».

По умолчаниюResourceBundleViewResolver загружает компоненты представления из файлаviews.properties, который находится в корне пути к классам проекта. Однако это местоположение можно изменить с помощью свойства «basename», например,


    
        
    

В приведенном выше случае он загружает компоненты представления из «spring-views.properties», который находится в корне пути к классам проекта.

Note
ResourceBundleViewResolver имеет возможность загружать bean-компоненты представления из разных пакетов ресурсов для разных локалей, но этот вариант использования требуется редко.

Пример ResourceBundleViewResolver, чтобы показать вам, как это работает:

1. контроллер

Класс контроллера возвращает представление с именем «WelcomePage».

//...
public class WelcomeController extends AbstractController{

    @Override
    protected ModelAndView handleRequestInternal(HttpServletRequest request,
        HttpServletResponse response) throws Exception {

        ModelAndView model = new ModelAndView("WelcomePage");

        return model;
    }
}

2. ResourceBundleViewResolver

ЗарегистрируйтеResourceBundleViewResolver в файле конфигурации bean-компонента Spring, измените расположение bean-компонентов представления по умолчанию на «spring-views.properties».



  

    
    

    
        
    

3. Просмотр бобов

Объявите каждый компонент представления как обычный стиль пакета ресурсов (ключ и сообщение), где

  1. «WelcomePage» - имя представления для сопоставления.

  2. «.(class)» - это тип представления.

  3. «.url» - это URL-адрес представления.

Файл: spring-views.properties

WelcomePage.(class)=org.springframework.web.servlet.view.JstlView
WelcomePage.url=/WEB-INF/pages/WelcomePage.jsp

Note
Поместите этот файл «spring-views.properties» в путь к классу вашего проекта.

How it works ?
Когда имя представления «WelcomPage» возвращается контроллером, ResourceBundleViewResolver найдет ключ, начинающийся с «WelcomPage» в файле «spring-views.properties», и вернуть соответствующий URL-адрес представления «/WEB-INF/pages/WelcomPage.jsp» обратно в DispatcherServlet.

Скачать исходный код