springMVC custom PrefixArgumentResolver
2014-02-14 17:22
211 查看
public class PrefixArgumentResolver implements HandlerMethodArgumentResolver{ //WebArgumentResolver{
@Override
public boolean supportsParameter(MethodParameter mp) {
return mp.hasParameterAnnotation(ReqParamPrefix.class) && !Collection.class.isAssignableFrom(mp.getParameterType());
}
@Override
public Object resolveArgument(MethodParameter mp, ModelAndViewContainer mavc, NativeWebRequest req, WebDataBinderFactory bf) throws Exception {
Object target = mp.getParameterType().newInstance();
String prefix = mp.getParameterAnnotation(ReqParamPrefix.class).value(), separator = ".";
MutablePropertyValues pvs = new ServletRequestParameterPropertyValues(req.getNativeRequest(ServletRequest.class), prefix, separator);
WebDataBinder binder = new WebDataBinder(target);
binder.bind(pvs);
return target;
}
}
@Override
public boolean supportsParameter(MethodParameter mp) {
return mp.hasParameterAnnotation(ReqParamPrefix.class) && !Collection.class.isAssignableFrom(mp.getParameterType());
}
@Override
public Object resolveArgument(MethodParameter mp, ModelAndViewContainer mavc, NativeWebRequest req, WebDataBinderFactory bf) throws Exception {
Object target = mp.getParameterType().newInstance();
String prefix = mp.getParameterAnnotation(ReqParamPrefix.class).value(), separator = ".";
MutablePropertyValues pvs = new ServletRequestParameterPropertyValues(req.getNativeRequest(ServletRequest.class), prefix, separator);
WebDataBinder binder = new WebDataBinder(target);
binder.bind(pvs);
return target;
}
}
相关文章推荐
- SpringMVC Custom ArgumentResolver
- springMVC custom ListArgumentResolver
- SpringMVC HandlerMethodArgumentResolver自定义参数转换器 针对HashMap失效的问题
- SpringMVC HandlerMethodArgumentResolver自定义参数转换器 针对HashMap失效的问题
- SpringMVC HandlerMethodArgumentResolver自定义参数转换器 针对HashMap失效的问题
- Error occured processing XML 'Cannot find class [springmvc.extention.BeanArgumentResolver]'.
- SpringMVC HandlerMethodArgumentResolver自定义参数转换器 针对HashMap失效的问题
- Spring MVC HandlerMethodArgumentResolver 自定义参数解析器
- Error occured processing XML 'Cannot find class [springmvc.extention.BeanArgumentResolver]'.
- SpringMVC HandlerMethodArgumentResolver解读
- Error occured processing XML 'Cannot find class [springmvc.extention.BeanArgumentResolver]
- Spring MVC ResourceBundleViewResolver example
- Spring mvc ContentNegotiatingViewResolver 根据路径后缀,选择不同视图
- Spring web MVC 框架之 视图解析器(ViewResolver)
- SpringMVC ContentNegotiatingViewResolver -- 根据请求资源名选择视图
- Springmvc SimpleMappingExceptionResolver
- 转载Spring 3 MVC ContentNegotiatingViewResolver
- Spring Web MVC 多viewResolver解决方案
- Spring MVC视图解析器:Spring MVC XmlViewResolver示例
- spring 自定参数解析器(HandlerMethodArgumentResolver)