Я новичок в аннотации и изучении вещей. В моем образце программы... простой привет, мир с использованием аннотаций в spring 4.0.
Это код файла контроллера. У меня есть две аннотированные записи RequestMapping, т.е. одна на уровне класса, а другая на уровне метода:
package com.controller;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.servlet.ModelAndView;
@Controller
@RequestMapping(value = "/Hybrid")
public class HybridController {
@RequestMapping(value = "/test", method = RequestMethod.GET)
public String getDemo(String name) {
System.out.println("/MVC/Demo");
return "helloworld" ;
}
}
Если я поставлю только уровень класса @RequestMapping, он будет работать с этим URL-адресом, подключающимся к .../SpringRS/Hybrid, или только с уровнем метода для подключения с использованием .../SpringRS/test, он отлично работает и отображает мне helloworld.jsp.
Но когда я пытаюсь объединить сопоставление запроса класса и метода и вызывать его, используя этот URL-адрес: .../SpringRS/Hybrid/test, это не работает.
Может ли кто-нибудь объяснить, что мне нужно, чтобы заставить его работать?
Посмотреть сопоставление распознавателя:
<context:component-scan base-package="com" />
<mvc:annotation-driven />
<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="prefix">
<value>WEB-INF/views/</value>
</property>
<property name="suffix">
<value>.jsp</value>
</property>
</bean>