我有简单的控制器:
public class Controller {
@RequestMapping(value = "/test", method = {RequestMethod.GET, RequestMethod.POST})
public void test(HttpServletResponse response) throws IOException {
System.out.println("HELLO WORLD");
}
}
当我启动jetty服务器并转到localhost:8080/test
时,我无法获得输出System.out.println("HELLO WORLD");
web.xml
我对此控制器一无所知。
哪里有问题?我怎样才能得到我的控制器?
答案 0 :(得分:0)
使用@Controller
注释您的班级像
@Controller
public class AppController {
@RequestMapping(value = "/test", method = {RequestMethod.GET, RequestMethod.POST})
public void test(HttpServletResponse response) throws IOException {
System.out.println("HELLO WORLD");
}
}
检查在“组件扫描”
下注册的基本包什么是组件扫描?
xml配置中使用<context:component-scan base-package="<<your classes base package>>" />
的组件扫描和基于注释的配置中的@ComponentScan告诉spring它应该在&lt;&gt;下的所有类中搜索类路径并查看每个类以查看它是否具有@Controller,@ Repository,@ Service或@Component,如果确实如此,那么Spring将使用bean工厂注册该类
答案 1 :(得分:0)
@Controller
@RequestMapping(value="/")
public class AppController {
@RequestMapping(value = "/test", method = {RequestMethod.GET, RequestMethod.POST})
public void test(HttpServletResponse response) throws IOException {
System.out.println("HELLO WORLD");
}
}
将请求映射添加到您的控制器级别然后它可以工作。