springMVC 注解参数传递方式

首先说明spring在注解MVC时的两个注解@PathVariable和@RequestParam。在传递过程中的URL请求本身上的参数通过@PathVariable获取,而在随着URL传递过来的参数的值通过@RequestParam获取。下边通过两个例子来说明:

@PathVariable:

前台请求的URL:

URL='/Collect/toCollect/JqOper/batchSubmit/unitId/discId/provinceId';
后台获取参数:

@RequestMapping("/batchSubmit/{provinceId}/{unitId}/{discId}")
@ResponseBody
public Map<String, String> submitToYou(
		@PathVariable(value="provinceId")String provinceId,
		@PathVariable(value="unitId")String unitId,
		@PathVariable(value="discId")String discId,
		HttpServletRequest request,HttpSession session)
注意,这里的参数是一一对应的,也就是在batch后边分别有三个对应的参数,通过@PathVariable取出与之对应
@RequestParam:

前台URL:

URL="${ContextPath}/check/unitLogicCheck_DataConfig?entityId="+entityId
后台获取参数:

@RequestMapping("unitLogicCheck_DataConfig")
@ResponseBody
public String YOU(
		@RequestParam(value = "entityId") String entityId) 
需要说明的是:
@RequestParam(value="username",required=false) String username //表示请求中可以没有名字为username的参数,如果没有默认为null。
@RequestParam(value="username", required=true, defaultValue="zhang") String username //表示如果请求中没有名字为username的参数,默认值为“zhang”。
@RequestParam(value="list") List<String> list//请求中有多个同名参数

深入浅出SPRINGMVC

你可能感兴趣的:(注解,spring)