zoukankan      html  css  js  c++  java
  • springmvc 整合Controller出现实例化两次问题

    启动项目的时候,发现初始化控制层的时候,初始化(使用构造方法打印日志的方式)了两次的情况。

    后来检查配置:

    <context:component-scan base-package="com.winning.joiner">
            
    </context:component-scan>

    发现,配置扫描的时候,没有排除@controller 层的过滤器

    修改后,问题解决,如下:

    在springmvc的配置文件配置扫描:

      <context:component-scan base-package="com.winning.joiner.magiccube">
            <context:include-filter type="annotation" expression="org.springframework.stereotype.Controller"/>
            <context:include-filter type="annotation" expression="org.springframework.web.bind.annotation.ControllerAdvice"/>
        </context:component-scan>

    在spring context的配置扫描:

      <context:component-scan base-package="com.winning.joiner.magiccube">
            <context:exclude-filter type="annotation" expression="org.springframework.stereotype.Controller"/>
            <context:exclude-filter type="annotation" expression="org.springframework.web.bind.annotation.ControllerAdvice"/>
        </context:component-scan>

    两个文件配合配置,才能解决实例化两次的问题。

    简单点说,就是springmvc扫描的包,扫描包含@Controller注解的类。

    而spring context 的扫描包,就要包包含@Controller的注解的类排除掉,这样才会在spring整个大工厂中,存在一个实例。

  • 相关阅读:
    js数据结构Map -----字典
    配置一个高效快速的Git环境
    Ubuntu下dlib库编译安装
    空间域二阶统计纹理
    Markdown语法
    Notepad++中NppExec的使用之一:基本用法
    斯坦福大学机器学习笔记及代码(一)
    安家落户
    Android App开发常用专题开源代码
    Android基础-EditText键盘的显示与隐藏
  • 原文地址:https://www.cnblogs.com/sloveling/p/spirngmvc_instance.html
Copyright © 2011-2022 走看看