在实际搭建Springmvc工程,通过controller进行业务处理和逻辑跳转,经常发现接口URL拼写正确但是访问不到控制层,这里 给出两点说明,可供排查:
1)springmvc-servlet.xml(只说明controller其他配置自行添加),在配置文件中添加
<!-- 自动扫描包,实现支持注解的IOC -->
<context:component-scan base-package="com.bj58.automation.controller" /> //路径基于实际需求添加
2)web.xml,在改配置文件中将
<servlet-mapping>
<servlet-name>springmvc</servlet-name>
<url-pattern>*.do</url-pattern>
</servlet-mapping>
修改成
<servlet-mapping>
<servlet-name>springmvc</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping>
controller格式如下:
@Controller
@RequestMapping("/task")
public class TaskController {
@Autowired
InsertTask insertTask;//注入添加任务接口
@RequestMapping(value="/insertTask")
public void insertTask(@RequestParam("productId") int productId,@RequestParam("taskname") String taskname,
HttpServletRequest request,Model model) {
insertTask.insertTaskService(productId, taskname);
}
@ResponseBody
@RequestMapping(value="/demo",method=RequestMethod.GET)
public String name() {
System.err.println("demo123");
return "demo";
}
接口访问路径格式如下:http://localhost:8080/task/demo