С аннотациями:
В вашем dispatcher-servlet.xml:
добавьте следующие импорта:
xmlns:context="http://www.springframework.org/schema/context"
xmlns:mvc="http://www.springframework.org/schema/mvc"
Также добавьте их в список вашей схемыРасположение:
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-3.1.xsd
http://www.springframework.org/schema/mvc
http://www.springframework.org/schema/mvc/spring-mvc-3.1.xsd
Затем вам нужно будет указать сервлету, что вы хотите использовать аннотации, что можно сделать, добавив:
<mvc:annotation-driven/>
Далее вам нужно будет указать, где он должен бытьсканирование для контроллеров:
<context:component-scan base-package="ui.controller" />
(«ui.controller» - это то, что я обычно использую, не стесняйтесь использовать все, что вам нравится.)
В вашей папке Source Packages:
Вам нужно добавить местоположение, которое вы только что определили в вашем сервлете.Поэтому создайте новый пакет, для меня он будет называться «ui.controller».
Затем вы добавляете в эту папку класс Java, ваш контроллер.Я назову его «HelloWorldController».
В вашем контроллере:
Добавьте аннотацию, чтобы убедиться, что диспетчер знает, что класс является контроллером.
@Controller
public class HelloWorldController{ ... }
Следующийвы хотите сделать, это определить, когда этот контроллер используется, так как вы можете использовать несколько контроллеров.Вы также можете быть более конкретным, определив, когда используется один метод в этом контроллере.
Для этого вы будете использовать аннотацию:
@RequestMapping("/HelloWorldPage")
protected ModelAndView showHelloWorldPage(){
return new ModelAndView("HelloWorldPage")
}
Так что теперь, когда вы отправляете lnkв местоположение, которое вы определили с помощью аннотации RequestMapping, будет вызван метод showHelloWorlPage.
Вы даже можете изменить отображение запроса на что-то совершенно другое, например "pageA"
@RequestMapping("/PageA")
protected ModelAndView showHelloWorldPage(){
return new ModelAndView("HelloWorldPage")
}
, которое не закрывается и не вызывает эту страницу из вида:
<a href ="PageA.htm">Hello</a>
Это будет гарантировать, что ссылка, показанная вашим пользователям, не сообщает им имена файлов.