当前位置: 首页 > 知识库问答 >
问题:

在没有应用程序的情况下连接Bean时,如何理解注释@ComponentScan。xml?

山越
2023-03-14

1,当我的字典树像这样时,会出现错误“@EnableSync注释元数据未注入”

2、但是当我的字典树喜欢这个时,错误就不会发生。

3、当我用application.xml连接Bean时,字典树喜欢第一段,但错误也没有发生。

所以我所确认的是@ComponentScan在没有应用程序的情况下连接Bean时的工作。xml?

共有1个答案

梁烨
2023-03-14

当一个类不包含包声明时,它被认为是在“默认包”(src.main.java)中。通常不鼓励使用“默认包”,应避免使用。对于使用@ComponentScan、@ConfigurationPropertiesScan、@EntityScan或@SpringBootApplication注释的Spring Boot应用程序,它可能会导致特殊的问题,因为每个jar中的每个类都是读取的。

Spring Boot支持基于Java的配置。虽然可以将SpringApplication与XML源一起使用,但我们通常建议您的主要源是单个@配置类。通常,定义main方法的类作为主@配置是一个很好的候选者。

这是一个经典的错误,当第一次做一个Spring应用程序时,最好把你所有的类都放在一个包里,永远不要把你的类放在“默认”(src.main.java)包里。

请阅读“2.构建代码”到“3.配置类”的更多内容:

https://docs.spring.io/spring-boot/docs/current/reference/html/using-spring-boot.html#using-引导配置类

 类似资料:
  • 问题内容: 我想要一种简单的,最好是基于注释的方式,将外部属性注入到Java程序中,而无需使用spring框架() SomeClass.java application.yml 在标准库中是否有建议的方法? 问题答案: 我最终使用apache commons配置: pom.xml: src /…/ PropertiesLoader.java /src/main/resources/applicat

  • 所以我想要一个“Void Repository”,通过它可以访问不一定在实体上操作的存储过程。 但这当然不起作用,因为期望是一个实体。 有没有一种方法可以使用注释而无需创建虚拟实体,或者我是否坚持使用使用通过准备好的语句进行查询的已实现类? 因为老实说,这很难看:

  • 我使用创建了一个应用程序构建文件。这将用和文件填充文件夹。 我在internet上进行了搜索,发现可以使用运行这些文件。不幸的是,这会产生以下错误输出: org.springframework.beans.factory.BeanCreationException:创建名为“org.springframework.boot.autocigure.orm.jpa.hibernatejpaAutoCo

  • 在jackson中,我们可以使用注释 @Json类型信息 @Json子类型 @JsonSubTypes.类型 以实现多态序列化。 我们可以选择 直接在数据模型上使用这些注释,这是最简单的方法。 在mixin上使用这些注释。这是一个关于它的链接Jackson中的多态反序列化,没有注释。 这两种解决方案都有一个问题:编写代码时必须知道所有子类。 在GraphQL中 鉴别器字段固定:"__typenam

  • 我想在Java Spring boot中获取我的应用程序的当前url。但问题是,我想从类而不是从中获得它。我试图从获取这个,但我无法将其包导入我的类。 请帮我得到我的网站的网址,不应该硬编码。或者如果有一种方法可以使用到我的util类。