其他分享
首页 > 其他分享> > spring 23 @ControllerAdvice 之 @InitBinder

spring 23 @ControllerAdvice 之 @InitBinder

作者:互联网

准备 @InitBinder

准备 @InitBinder 在整个 HandlerAdapter 调用过程中所处的位置

sequenceDiagram participant adapter as HandlerAdapter participant bf as WebDataBinderFactory participant mf as ModelFactory participant ihm as ServletInvocableHandlerMethod participant ar as ArgumentResolvers participant rh as ReturnValueHandlers participant container as ModelAndViewContainer rect rgb(200, 150, 255) adapter ->> +bf: 准备 @InitBinder bf -->> -adapter: end adapter ->> +mf: 准备 @ModelAttribute mf ->> +container: 添加Model数据 container -->> -mf: mf -->> -adapter: adapter ->> +ihm: invokeAndHandle ihm ->> +ar: 获取 args ar ->> ar: 有的解析器涉及 RequestBodyAdvice ar ->> container: 有的解析器涉及数据绑定生成Model数据 ar -->> -ihm: args ihm ->> ihm: method.invoke(bean,args) 得到 returnValue ihm ->> +rh: 处理 returnValue rh ->> rh: 有的处理器涉及 ResponseBodyAdvice rh ->> +container: 添加Model数据,处理视图名,是否渲染等 container -->> -rh: rh -->> -ihm: ihm -->> -adapter: adapter ->> +container: 获取 ModelAndView container -->> -adapter:

收获

标签:container,InitBinder,--,spring,adapter,ihm,ControllerAdvice,rh
来源: https://www.cnblogs.com/xy7112/p/16440135.html