@Controller?//?表示這是一個(gè)Controller
@RequestMapping("annotation")?//?映射規(guī)則?匹配?/annotation/*的請(qǐng)求
public?class?AnnotationController?{
@RequestMapping(value?=?"/test.action",?method?=?RequestMethod.GET)?//?該方法映射/annotation/test.action?id=
//?@RequestParam("id")將映射request-url中的參數(shù)id
public?String?test(@RequestParam("id")?Integer?id,?Model?model)?{
System.out.println("test():"?+?id);
List<Integer>?list?=?new?ArrayList<Integer>();
for?(int?i?=?0;?i?<?id;?i++)?{
list.add(i);
}
model.addAttribute("list",?list);
return?"list";
}
/**
?*?RESTFul風(fēng)格的url?testA.action/120</br>
?*?隱藏了參數(shù)id=120
?*?
?*?@return?String視圖路徑
?*/
@RequestMapping(value?=?"/testA.action/{id}",?method?=?RequestMethod.GET)
public?String?testA(@PathVariable("id")?Integer?id,?Map<String,?Object>?model)?{
System.out.println(id);
List<Integer>?list?=?new?ArrayList<Integer>();
for?(int?i?=?0;?i?<?id;?i++)?{
list.add(i);
}
model.put("list",?list);
return?"list";
}
}"http://localhost/springmvc/annotation/test.action?id=100"這個(gè)url訪問第一個(gè)方法是可以的但是用http://localhost/springmvc/annotation/testA.action/100訪問就會(huì)404我現(xiàn)在就當(dāng)它是不支持(.action)了~求大牛解答!
1 回答

暴躁的代碼
TA貢獻(xiàn)7條經(jīng)驗(yàn) 獲得超10個(gè)贊
提了問之后,立馬就想到了testA.action/100是不會(huì)經(jīng)過springmvc的過濾器的
解決方案:
@RequestMapping(value?=?"/testA/{id}.action",?method?=?RequestMethod.GET) public?String?testA(@PathVariable("id")?Integer?id,?Map<String,?Object>?model)?{ System.out.println(id); List<Integer>?list?=?new?ArrayList<Integer>(); for?(int?i?=?0;?i?<?id;?i++)?{ list.add(i); } model.put("list",?list); return?"list"; }
http://localhost/springmvc/annotation/testA/100.action
添加回答
舉報(bào)
0/150
提交
取消