SpringMVC使用 <mvc:argument-resolvers> 注册自定义解析器,自定义解析器对象会被创建3次,不知道为什么?

山哥 发布于 2019/05/30 11:38
阅读 842
收藏 0

NGINX Sprint China 2022--NGINX年度旗舰盛会,已开启免费预约!>>>

大家好,我使用 SpringMVC 的 HandlerMethodArgumentResolver 自定义参数绑定解析器,

public class LoginUserMethodParamArgumentResolver implements HandlerMethodArgumentResolver {
   public LoginUserMethodParamArgumentResolver {
       System.out.println(">>>> New LoginUserMethodParamArgumentResolver Object");
   } 

   // 其它代码省略
}

然后使用 <mvc:argument-resolvers> 进行注册:

<mvc:annotation-driven>
   <mvc:argument-resolvers>
      <bean class="com.test.LoginUserMethodParamArgumentHandlerResolver" />
   </mvc:argument-resolvers>
</mvc:annotation-driven>

然后启动 Tomcat 加载项目,发现控制台打印了3次日志信息:

>>>> New LoginUserMethodParamArgumentResolver Object
>>>> New LoginUserMethodParamArgumentResolver Object
>>>> New LoginUserMethodParamArgumentResolver Object

不知道大家有没有遇到过?不应该只创建一次对象吗?怎么会创建了3次呢?

加载中
OSCHINA
登录后可查看更多优质内容
返回顶部
顶部