一:@RequestMapping
前台访问后台时,根据@RequestMapping内容进行控制器层的对应与函数对应
1.@RequestMapping(“exp”)
一般写于类或函数上,完全匹配,可匹配exp,可能匹配exp.json
2.@RequestMapping(“expnewword { index } /{ dbid } .html”)
一般写于函数上,index和dbid为url的动态参数,使用@PathVariable获取动态参数
public String getLogin(@PathVariable("userId") String userId,
@PathVariable("roleId") String roleId){
System.out.println("User Id : " + userId);
System.out.println("Role Id : " + roleId);
return "hello";
}
@PathVariable("userId") String userId,
@PathVariable("roleId") String roleId){
System.out.println("User Id : " + userId);
System.out.println("Role Id : " + roleId);
return "hello";
}
@RequestMapping(value="/javabeat/{regexp1:[a-z-]+}",
method = RequestMethod.GET)
public String getRegExp(@PathVariable("regexp1") String regexp1){
System.out.println("URI Part 1 : " + regexp1);
return "hello";
}
regexp1:[a-z-]+}",
method = RequestMethod.GET)
public String getRegExp(@PathVariable("regexp1") String regexp1){
System.out.println("URI Part 1 : " + regexp1);
return "hello";
}
3.限定性
@RequestMapping(value="/get",method = RequestMethod.GET)
@RequestMapping(value="/post",method = RequestMethod.POST)
@RequestMapping(value="/params",params="name")
@RequestMapping(value="/headers",headers="Content-Type:text/html;charset=UTF-8")
4.匹配符
二:@RequestParam
控制层函数获取普通参数时,使用@RequestParam绑定请求参数,可控制参数名、有无等。
1.required=true时必须有参数aa,没有则报错
public String filesUpload(@RequestParam(value="aa", required=true) String inputStr, HttpServletRequest request)
2.默认required=true
@RequestParam(value="aa") String inputStr
3.required=false时可以没有参数aa,参数默认为null,接收参数不可为基本类型,不然报错,应该为对象类型或包装类型。