spring mvc模式下做了一个web练习项目
这是欢迎界面的controller,能够正常运行
package wxj.welcom.controller;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;
@Controller
public class Welcom {
@RequestMapping("")
public String Create(Model model) {
return "showTable";
}
}
这是功能的controller不能正常运行
package wxj.table.controller;
import java.util.HashMap;
import java.util.LinkedList;
import java.util.List;
import java.util.Map;
import javax.annotation.Resource;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import wxj.table.dto.TableInfo;
import wxj.table.service.TableInfoService;
@Controller
@RequestMapping("/showTable")
public class TableInfoController {
@Resource
TableInfoService tableInfoService;
@RequestMapping("/showTable.do")
@ResponseBody
public Map<String, Object> showTable() {
/*
* Map<String, Object> map = new HashMap<String, Object>(); map=
* tableInfoService.queryPageStaffByCondition(pageObj); return map;
*/
List<TableInfo> result = new LinkedList<TableInfo>();
TableInfo tableInfo;
for (int i = 0; i < 10; i++) {
tableInfo = new TableInfo();
tableInfo.setUserId("1" + i);
tableInfo.setPassword("123456");
result.add(tableInfo);
}
Map<String, Object> map = new HashMap<String, Object>();
map.put("rows", result);
map.put("total", 10);
return map;
}
}
这是jsp文件
$(document).ready(function() {
// 用于显示表格
$('#userTable').datagrid({
url : '/showTable.do',
columns : [ [ {
field : 'userId',
title : '用户名',
width : 50
}, {
field : 'password',
title : '密码',
width : 50
}, ] ]
});
});
这是运行的截图
看下页面的相对路径是不是在根路径下,也就是/showTable.do是不是和你的页面地址一致,不行指定下完整路径
请求不对啊 @RequestMapping("/showTable") public class TableInfoController {} 这是你标的啊 请求至少是/showTable/showTable.do才对!!!!
还有就是项目名都不用加的吗? 什么地方设置了?完整一点的请求就是ip:端口号/项目名/showTable/showTable.do....所以表面看你的请求应该是‘/项目名/showTable/showTable.do‘这样吧?
上边2位说的对啊,你的URL能不能指定完整了,这样也许也可以但是这种编码习惯不好,你打断点或者输出一句话看进到你的方法里了吗?看你的页面报错确实是少了指定类路径,springMVC还没有这么智能。url : 。。。'/showTable/showTable.do', 。。。就按@砸死接触说的吧
1.404是路径错误,你就不用想别的原因了
2.你那个路径的确错了,程序不会骗你,
正确路径:ip:端口/项目名/showTable/showTable.do
3.个人建议:无论何时路径尽量写完整,不要省略 那几个字母,也不费事,纯属个人建议
补充,如果你用的jetty或者tomcat,且配好了默认项目名,那路径种就是:ip:端口/showTable/showTable.do
你的map要放到model里边才能传递给前端。model.addAttribute("键”,传递的参数);