Spring MVC一些常见注解的使用(一)关于url的一些注解

                                                  Spring MVC一些常见注解的使用(一)java

                                                  关于url的一些注解正则表达式

@PathVariablespring

直接获取url上的指定值,用法示例:mvc

@RequestMapping(value = "/comIncomeType/{userId}/test", method = RequestMethod.GET)
	@ResponseBody
	public JsonAndView incomeType(@PathVariable("userId")String userId ) {
		JsonAndView jv = new JsonAndView();
		jv.addData("key",userId);
		return jv;
	}

 @RequestMappingapp

这个注解是你们都比较经常使用的的一个注解,可是一个比较有用的是这个注解提供url模版的正则表达式(应该是3.0之后的特性)用法以下:url

@RequestMapping(value = "/comIncomeType/{userId:[0-9]}/test", method = RequestMethod.GET)
@ResponseBody
public JsonAndView incomeType(@PathVariable("userId")String userId ) {
	JsonAndView jv = new JsonAndView();
	jv.addData("key",userId);
	return jv;
}

这个时候userId就只支持就0到9的数字,其余的所有不匹配。spa

@MatrixVariablecode

这个注解是专门在,作参照的时候使用,这种url:com/comIncomeType/1;p=2下使用,不过我在实现用例的时候法相,spring mvc 4.0下面这个注解还可能有一些bug,当模版url使用了正则表达式的时候,后面的那些值是拿不到的,后面有机会去看看实现上是否是真的bug。xml

@RequestMapping(value = "/comIncomeType/{userId}", method = RequestMethod.GET)
	@ResponseBody
	public JsonAndView incomeType(@MatrixVariable(value="p" ,pathVar="userId")String p) {
		
		System.out.println(p);
		JsonAndView jv = new JsonAndView();
		jv.addData("key","nihao");
		return jv;
	}

当有不少url上不止一个矩阵参数的时候,能够使用Map<String,String>作参数就不用指定value值了。注意的是要使用的时候,配置文件上必定要配置io

<mvc:annotation-driven enable-matrix-variables="true"/>
相关文章
相关标签/搜索