Я начал изучать Spring Framework и не могу найти альтернативный метод для вызова метода контроллера. Я передаю переменную строки запроса в URL-адресе, например - /index.htm?do=login
вызвать метод контроллера с именем "login" из моего контроллера
есть ли альтернативный метод, чем этот
какой URL выглядит
"http://example.com/index.htm" или" http://example.com/index/"
что такое @requestMapping и как его использовать?
Большое спасибо!
диспетчер-servlet.xml
<bean id="urlMapping" class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">
<property name="mappings">
<props>
<prop key="index.htm">myController</prop>
</props>
</property>
</bean>
<bean id="myController" class="myController">
<property name="methodNameResolver">
<ref bean="methodNameResolver"/>
</property>
</bean>
<bean id="methodNameResolver"
class="org.springframework.web.servlet.mvc.multiaction.ParameterMethodNameResolver">
<property name="paramName">
<value>do</value>
</property>
</bean>
myController
public class myController extends MultiActionController {
public ModelAndView login(HttpServletRequest request, HttpServletResponse response) {
return new ModelAndView("login");
}
}
в этом коде,
Мне всегда нужно передать строковую переменную запроса, чтобы вызвать соответствующий метод контроллера.
как "http://example.com/index.htm?do=login"
это вызовет метод входа из контроллера
но я не хочу использовать строковые переменные запроса. Как мне это сделать?
возможно ли с помощью @RequestMapping
вызвать метод входа контроллера с URL, который выглядит следующим образом: http://example.com/login"
Я пробовал это, но он не работает
@RequestMapping("/index.htm")
public ModelAndView index(@RequestParam(value = "do", required = false) String doParam)
{
return new ModelAndView("login");
}