首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Spring spring.factories vs @Enable注释

Spring spring.factories vs @Enable注释
EN

Stack Overflow用户
提问于 2017-03-15 19:59:36
回答 1查看 1.3K关注 0票数 4

我使用Spring和Spring已经有一段时间了,Spring核心已经使用了更长时间,但是我在创建框架时找不到使用哪种技术的明确规则:

  • 弹簧启动器+ spring.factories文件
  • 弹簧启动器+ @EnableXxx
  • 两者都有

例如:

  • Eureka客户端启动程序要求用户导入spring-cloud-starter-eureka-client并在某些配置类上添加@EnableEurekaClient
  • 另一方面,在类路径上添加spring-boot-starter-jdbc就足以触发数据源自动配置。没有像@EnableDataSourceAutoConfiguration这样的东西
  • 想要通过配置属性配置缓存的人也需要手动添加@EnableCaching

有时@EnableXxx注释类包含在初学者带来的代码中,有时没有。

我知道@Enable...是“proof”方法(从技术上讲是一个好看的@Import),但是@EnableEurekaClient存在的事实证明了它没有被任何方式所反对。

规矩是什么?我在文件里找不到。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-03-15 21:09:22

没有硬性的规则(至少从Spring的角度来看)。

Dave Syer说:

一个候选的经验法则是“如果某些东西在类路径上,但是提供了多种特性,您需要一种切换子集的方法”--我更愿意把它看作是“揭示一个有意识的选择”,而不是“依赖魔法”。

我把它看作是启动服务器或工作(比如探索客户端)。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42819558

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档