как использовать Spring MVC для реализации фронт-контроллера, но без использования контроллеров - PullRequest
3 голосов
/ 03 мая 2011

заголовок этого поста может сбивать с толку. Я постараюсь лучше уточнить это. Я начал проект с использованием Spring MVC, он работает нормально, без проблем. После этого я понял, что я был немного излишним и обнаружил, что мне нужен диспетчер фронт-контроллера, потому что все, что нужно, это красивые URL без расширений.

Так что вместо того, чтобы реализовывать совершенно новый контроллер шрифтов, я бы хотел воспользоваться преимуществами существующей установки Spring MVC. вот пример контроллера

 @RequestMapping("/accounts")
public String home() {

    return "accounts";
}

 @RequestMapping(value="/")
public String Home(){
    return "home";
}

как видите, возвращаемая строка - это та, которая указывает представление, основанное на resourceviewresolver

<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
  <property name="prefix" value="/views/" />
  <property name="suffix" value=".jsp" />
</bean>

Теперь я не хочу использовать контроллер, но мне нужен механизм для сопоставления запроса с физической страницей. Мне интересно, возможно ли это.

Как я могу это сделать? я должен просто создать другого диспетчера?

спасибо, что прочитали это и помогли.

1 Ответ

4 голосов
/ 03 мая 2011

Spring 3 поддерживает элемент <mvc:view-controller> для таких случаев:

<mvc:view-controller path="/" view-name="home" />
<mvc:view-controller path="/accounts" view-name="accounts" />

См. Также:

...