如果组件扫描被删除,@Autowired 不起作用

2023-11-20

我面临的问题是,如果我从配置中删除组件扫描标记,则注释 @Autowired 不再起作用(在使用此注释的所有 Java 类中)

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xmlns:context="http://www.springframework.org/schema/context"
       xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd">

  <context:component-scan base-package="efco.auth" />

here are some beans...

efco.auth 包中只有一个类,该类与下面的 EfcoBasketLogic 类没有关系。

和一个使用 @Autowired 的类:

package efco.logic;
    public class EfcoBasketLogic extends BasketLogicImpl {

        @Autowired
        private EfcoErpService erpService;

这个 Bean 在另一个 spring 配置文件中定义:

<bean id="BasketLogic" class="efco.logic.EfcoBasketLogic">
    <property name="documentLogic" ref="DocumentLogic" />
    <property name="stateAccess" ref="StateAccess" />
    <property name="contextAccess" ref="ContextAccess" />
  </bean>

如您所见,erpService 未定义。其他三个属性位于 BasketLogicImpl 上并具有设置器。

我做错了什么?


正如托马斯所说,你需要<context:annotation-config/> for @Autowired上班。当你有<context:component-scan/>,它隐含地包含了annotation-config为你。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如果组件扫描被删除,@Autowired 不起作用 的相关文章

随机推荐

  • GAE 实例是否限制为 10 个并发请求?

    我从多个来源听说 Google App Engine 实例有 10 个并发请求的硬限制 我想知道是否有人可以澄清这到底意味着什么 调度程序是否会阻止任何超过 10 个的请求 或者这是通过限制并发线程来强制执行的 具体来说 这个限制是否像影响
  • 如何从 python/numpy 调用 java 函数?

    我很清楚如何用 C 扩展 Python 但是如果我想用 Java 编写一个与 numpy 一起使用的函数怎么办 这是一个简单的场景 我想使用 Java 类计算 numpy 数组的平均值 如何将 numpy 向量传递给 Java 类并收集结果
  • 未知错误:无法等待扩展后台页面加载:chrome-extension 错误使用 Selenium 将扩展加载到 Chrome Headless

    我尝试在无头模式下通过 selenium 运行 chromedriver 重要的 如果我消除以下代码行 但不是无头 则代码运行得很好 chrome options add argument headless chrome options a
  • 如何循环浏览页面?

    这是我最近面临的一项挑战 我还没有找到最好的方法 也许其他人有想法 使用 PHP 和 或 HTML 创建一个页面 该页面以给定的时间间隔循环浏览任意数量的其他页面 例如 我们加载这个页面 需要花 20 秒去 google 然后去 yahoo
  • 发布时将连接字符串从开发更改为生产

    我想知道如何自动更改我的应用程序的连接字符串 因此当我在我的电脑上处理它时 它使用我的本地 SQL Server 一旦我发布它 就会使用我在 azure 上托管的 SQL Server 现在我只是根据我想要的内容注释掉连接字符串 我看到 W
  • Facebook SDK 登录失败无效密钥错误

    在设备上运行 Facebook Android SDK 时 我收到 登录失败错误 我已经完成了他们指定的所有操作 例如创建哈希等等 错误是 Facebook authorize 5539 登录失败 invalid key Facebook
  • 在 Dart 中,如何从 Type 实例获取限定名称?

    我有一个实例Type 但我想要它的完全限定名称 我怎样才能做到这一点 我知道我必须使用 Mirrors Dart 的反射库 使用新的reflectClass顶级函数来自dart mirrors 这是一个例子 import dart html
  • Oracle (0x80004005)ORA-12154: TNS: 无法解析连接标识符

    我正在尝试从 ASP 经典应用程序连接到 Oracle 数据库 但是我不断遇到 ORA 12154 错误 TNSNAMES ORA 配置正确 DBSOURCE A B com 描述 地址列表 地址 协议 TCP 主机 C D B com 端
  • ** 全局字符是什么?

    我的 React gulpfile 中有这个路径 var path HTML src index html ALL src js js src js js src index html JS src js js src js js MINI
  • Aspnet 网站管理工具、用户表或 aspnet_users 表

    为什么我的用户和角色最终会出现在Users and Roles表而不是 aspnet users 和 aspnet roles 当我使用 Aspnet 网站管理工具 Visualstudio gt 菜单 gt 项目 gt aspnet 配置
  • 带有 TEXT 列的 MySQL 表

    我一直在研究数据库 并且必须处理文本字段 现在 我相信我已经看到一些地方提到最好将 TEXT 列与表的其余部分隔离 将其放在自己的表中 然而 现在我在任何地方都找不到这个参考资料 而且因为这是很久以前的事了 我开始认为也许我误解了这个信息
  • Java/swing:控制台组件?

    我正在寻找一个可以在 Swing 中使用的组件 该组件充当 GUI 控制台 有一个带滚动条的文本区域 可以设置为特定字体 有一个主机应用程序可以获得的InputStream和OutputStream 接受键盘输入 将其打印到控制台文本的末尾
  • 检查Windows中的内存泄漏[重复]

    这个问题在这里已经有答案了 可能的重复 有 Windows 的良好 Valgrind 替代品吗 我在 Linux 中使用过 valgrind 谁能告诉我一些类似的工具来检查Windows中的内存泄漏 应用验证器将检查内存泄漏以及许多其他类型
  • React 前端连接到 Flask 后端 Howto

    我有一个 ReactJS 前端和一个 Flask 后端 我很难让两者相互通信 特别是从前端发送表单变量到 Flask 下面给出的是我在 127 0 0 1 3000 上运行的前端代码 import ReactDOM from react d
  • 如何拦截Spring Cloud Stream消息?

    Spring 允许拦截其许多产品的消息 例如 RestTemplate 和 SpringMVC 是否可以拦截Spring Cloud Stream消息 对于传入和传出消息 能够使用以下方法拦截入站和出站 Spring Cloud Strea
  • R x$ed 中的错误:$ 运算符对于原子向量无效

    这是我的代码 x lt c 1 2 x names x lt c bob ed x ed 为什么我会收到以下错误 x ed 中的错误 运算符对于原子向量无效 从帮助文件中得知 See 你可以阅读 仅对递归对象有效 并且仅在下面有关递归对象的
  • 为什么特征类型 `Box` 会出现“Sized is not Implemented”错误,但 `async fn() -> Result<(), Box>` 却有效?

    我有以下简化代码 use async trait async trait 0 1 36 use std error Error async trait trait Metric Send type Output type Error Err
  • python float 到 int 转换

    我有一个问题真的让我抓狂 通常做int 20 0 会导致20 到目前为止 一切都很好 但 levels int gex dict i for i in sorted gex dict keys while gex dict i 返回一个浮点
  • 当 T 是引用类型时,为什么 const T& 参数中的 const 会消失? [复制]

    这个问题在这里已经有答案了 以下代码显示 如果模板采用 ref to const参数用引用类型实例化 例如 int 参数不是const include
  • 如果组件扫描被删除,@Autowired 不起作用

    我面临的问题是 如果我从配置中删除组件扫描标记 则注释 Autowired 不再起作用 在使用此注释的所有 Java 类中