学习5中映射方式,常用的有1,3,4,5,Ant风格作为了解。
(一)标准URL映射
user.jsp
@Controller
@RequestMapping("/user")
public class UserController {
(一)标准URL映射
@RequestMapping("/usertest")
// @RequestMapping(value="/usertest")
//@RequestMapping(value={"/usertest",“usertest2”})//页面多个值
public String user(Model model){ //1
model.addAttribute(“name”,“张三”);
return “showUser”;
}
(二)占位符映射
@RequestMapping(value=“usertest7/{id}”)//占位符映射7 后台显示1
public String user7(@PathVariable(“id”) Integer id){
System.out.println(id);
return “showUser”;
}
}
(三)4、限制请求方法映射
/@RequestMapping(value="/usertest",method = {RequestMethod.GET,RequestMethod.POST})
//@RequestMapping(value="/usertest",method = RequestMethod.POST)//报错
//@RequestMapping(value="/usertest",method = RequestMethod.GET)//默认 Request method ‘GET’ not supported
public String user(Model model){ //1
model.addAttribute(“name”,“张三”);
return “showUser”;
}
}
(四)5、限制参数映射
//方式一:不带id
@RequestMapping(value=“usertest2” ,params=“id”) //2
public String user2(Model model){
model.addAttribute(“name”,“张三”);
return “showUser”;
}
//方式二:带id
@RequestMapping(value=“usertest2” ,params=“id”)//与页面一致 2
public String user2(Model model,int id){
model.addAttribute(“name”,“张三”);
System.out.println(id);
return “showUser”;
}
//方式三:id参数与页面不一致,还能识别,需要加上@RequestParam(“类中参数”)
@RequestMapping(value=“usertest2” ,params=“uid”)//报错 此id!=uid 2
public String user2(Model model,@RequestParam(“uid”) int id){
model.addAttribute(“name”,“张三”);
System.out.println(id);
return “showUser”;
}
//方式四:id值与页面要求不一致
限定请求参数映射(id!=1)3
@RequestMapping(value=“usertest3” ,params=“id!=1”)//与页面一致 3
public String user3(Model model, int id){
model.addAttribute(“name”,“张三”);
System.out.println(id);
return “showUser”;
}
//方式五:类中不能是id,其他都可以
限定请求参数映射(参数!id)4
@RequestMapping(value=“usertest3” ,params="!id")//4
public String user3(Model model, int aid){
model.addAttribute(“name”,“张三”);
System.out.println(aid);
return “showUser”;
}
//方式六参数!id,类中不给id参数
标准映射5(参数!id,类中不给id参数)
@RequestMapping(value=“usertest3” ,params="!id")//5 不给id
public String user3(Model model){
model.addAttribute(“name”,“张三”);
return “showUser”;
}
//方式七:请求中没有参数id,类中参数有id,系统不报错
@RequestMapping(value=“usertest5”)//6
public String user5(Model model,@RequestParam(value=“id”,required=false)Integer id){
model.addAttribute(“name”,“张三”);
System.out.println(id);
return “showUser”;
}
showUser.jsp
${name}
乱码中添加web.xml配置