当前位置: 首页 > 面试题库 >

如何使用@ComponentScan批注扫描多个路径?

申光临
2023-03-14
问题内容

我正在使用Spring 3.1,并使用@Configuration@ComponentScan属性引导应用程序。

实际的开始是

new AnnotationConfigApplicationContext(MyRootConfigurationClass.class);

该配置类带有注释

@Configuration
@ComponentScan("com.my.package")
public class MyRootConfigurationClass

而且效果很好。但是,我想更详细地说明我扫描的软件包,所以我尝试了。

@Configuration
@ComponentScan("com.my.package.first,com.my.package.second")
public class MyRootConfigurationClass

但是,此操作失败,并显示错误消息,提示我找不到使用@Component注释指定的组件。

做我追求的正确方法是什么?

谢谢


问题答案:

@ComponentScan使用字符串数组,如下所示:

@ComponentScan({"com.my.package.first","com.my.package.second"})

当您仅在一个字符串中提供多个包名称时,Spring会将其解释为一个包名称,因此找不到它。



 类似资料:
  • 我使用Spring 3.1和无融资创业应用程序使用和属性。 实际启动是用 此配置类的注释为 这个很好用。然而,我想更具体地介绍我扫描的软件包,所以我尝试了。 然而,这失败了,错误告诉我它找不到使用注释指定的组件。 做我想做的事的正确方法是什么? 谢啦

  • 问题内容: 在整个类路径中搜索带注释的类的最佳方法是什么? 我正在做一个库,我想允许用户注释他们的类,所以当Web应用程序启动时,我需要扫描整个类路径以查找某些注释。 你知道执行此操作的库或Java工具吗? 编辑:我正在考虑类似Java EE 5 Web服务或EJB的新功能。你使用或注释类,系统在加载时会找到这些类,因此可以远程访问它们。 问题答案: 使用 API 组件提供程序,它从基本程序包扫描

  • 问题内容: 我有几个需要用名称注释的类,因此我将注释定义为 现在,需要此注释的类定义为 我使用下面的代码来扫描注释 问题是返回的映射包含,但是我需要映射包含作为键,这是Annotation的值而不是bean名称。 有办法吗? 问题答案: 只需获取注释对象并提取值即可 让我知道是否不清楚。

  • 我正在尝试为我的iOS应用程序找到一种好方法来扫描三种不同类型的蓝牙LE外围设备,每种外围设备都由一个唯一的服务/UUID表示。CBCentralManager scanFor外围文件与服务:选项方法采用服务UUID数组,当提供时,留档状态为“中央管理器仅返回宣传您指定的服务的外围设备”。然而,我发现这实际上意味着,如果您指定3个服务UUID,您将只获得宣传所有三个服务的外围设备。即它是一个AND

  • 我是java新手,我的任务是使用扫描器读取数组,并在另一种方法中读取int。 我正在做的是计算一只兔子到达河对岸所需的最小跳跃次数。数组中的int表示从河的一边开始的石头的距离,另一个int表示石头的数量。兔子能跳的最远距离是50。 对于输入和输出: 输入n:7(输入,河中的石头数)32 46 70 85 96 123 145(输入,石头与起点之间的距离,最后一个数字是河的宽度,即目的地(河对岸)

  • 我有一系列骰子,对于每个骰子,我需要提示用户是否要重新滚动它。最简单的方法似乎是使用扫描仪类进行提示 - 我检查他们输入的内容并适当地处理。但是,如果用户输入中不存在请求的数据,则 scanner.next() 将引发异常。所以,扫描仪.hasnext()需要以某种方式适应这里。 这是我的密码;它会将条目输入到响应数组中,但如果用户输入既不包含Y也不包含N,则会抛出异常。 我如何调用scanswo