Extend Spring @MVC
Extending RequestMappingHandlerMapping
Spring @MVC通过在方法上使用RequestMapping来确认应该使用哪个方法来响应相应的请求,而RequestMapping又通过各种RequestCondition的实现来完成各种过滤(比如:consumes,headers,methods,params,produces以及value等)。在Spring @MVC框架中使用RequestConditionHolder和RequestMappingInfo这两个实现。
自定义RequestCondition
- 实现RequestCondition接口
1 2 3 4 5 6 7 8 9 10 |
|
- 继承RequestMappingHandlerMapping
- getCustomTypeCondition方法根据对应的Handler类返回类级别的condition
- getCustomMethodCondition方法根据对应的Handler方法返回方法级别的condition
扩展RequestMappingHandlerAdapter
在Reques™appingHandlerAdapterli里,Spring @MVC通过各种HandlerMethodArgumentResolver的实现来决定传什么参数给Handler的方法。
To be continue …