当前位置: 首页 > wzjs >正文

找个人做网站开不出发票怎么办网店怎么开

找个人做网站开不出发票怎么办,网店怎么开,wordpress看流量,tomcat加jsp做网站1.简要版 Configuration和Bean,既可以用于普通配置类,也可以用于自动配置类。二者的区别和联系是什么呢? 区别: Configuration和Bean是Spring框架本身的注解,用于定义配置类和生成Bean。而自动配置通常是Spring Boo…

1.简要版

@Configuration和@Bean,既可以用于普通配置类,也可以用于自动配置类。二者的区别和联系是什么呢?

区别:

  • @Configuration和@Bean是Spring框架本身的注解,用于定义配置类和生成Bean。
  • 自动配置通常是Spring Boot的概念,比如通过@EnableAutoConfiguration和条件注解来实现的。

联系:

  • 自动配置类本质上也是普通配置类,只是:
    • 被 Spring Boot 自动加载
    • 使用了条件注解控制 Bean 的创建
  • 普通配置类可以覆盖自动配置类的 Bean,例如通过 @Primary 或在 application.properties 中设置属性来改变默认行为。

2.详情版

2.1 基本定义

类型定义
普通配置类使用 @Configuration 注解的类,内部通过 @Bean 方法显式定义 Bean。这类配置类是开发者手动编写的,用于构建应用所需的依赖关系。
自动配置类是 Spring Boot 提供的一种特殊配置类,通常也使用 @Configuration 和 @Bean,但结合了 条件注解(如 @ConditionalOnClass@ConditionalOnMissingBean 等),由 Spring Boot 在启动时 自动加载并按需启用

2.2 加载机制

项目普通配置类自动配置类
加载方式显式声明:通过组件扫描(@ComponentScan)或 @Import 加载隐式加载:由 @EnableAutoConfiguration 触发,从 spring.factories 或自动配置元数据中读取
控制权完全由开发者控制由 Spring Boot 根据环境自动判断是否启用
是否可覆盖可以被覆盖或替换通常不可覆盖,除非手动定义相同 Bean 并设置为优先级更高

2.3 条件化配置

项目普通配置类自动配置类
是否支持条件化不支持支持多种条件注解(如 @ConditionalOnClass@ConditionalOnProperty 等)
目的用于显式创建 Bean用于按需启用/禁用配置,实现“智能配置”

⚠️ 自动配置类的核心优势在于其“条件化”能力。它可以根据类路径、配置属性、已注册的 Bean 等条件,决定是否启用某个配置或创建某个 Bean。


2.4 使用场景

类型适用场景
普通配置类开发者手动定义的 Bean、自定义组件、业务逻辑相关的配置等
自动配置类用于 Spring Boot 内部或第三方库提供的默认配置,如数据库连接、Web 容器、邮件服务等

2.5 两者的关系

  • 自动配置类本质上也是普通配置类,只是:
    • 被 Spring Boot 自动加载
    • 使用了条件注解控制 Bean 的创建
  • 普通配置类可以覆盖自动配置类的 Bean,例如通过 @Primary 或在 application.properties 中设置属性来改变默认行为。

2.6 示例对比

1. 普通配置类: 该类需要被组件扫描或显式导入,才能生效。

@Configuration
public class MyConfig {@Beanpublic MailService mailService() {return new MailServiceImpl();}
}

2. 自动配置类:该类只有当 javax.mail.Session 存在,且未手动注册 MailService 时才会生效。

@Configuration
@ConditionalOnClass(Session.class)
public class MailAutoConfiguration {@Bean@ConditionalOnMissingBean(MailService.class)public MailService mailService() {return new MailServiceImpl();}
}

2.7 使用建议

场景建议
自定义 Bean使用普通配置类
第三方库集成使用自动配置类(由库提供者定义)
修改默认配置使用普通配置类覆盖自动配置类的 Bean
自定义自动配置实现 @Configuration + 条件注解,注册到 spring.factories

2.8 总结

项目普通配置类自动配置类
是否自动加载是(Spring Boot 控制)
是否支持条件判断
是否可被覆盖通常不可直接覆盖
适用场景自定义逻辑、显式配置自动化配置、默认行为

通过合理使用这两类配置方式,可以更高效地构建灵活、可扩展的 Spring 应用。普通配置类用于构建自己的业务逻辑,而自动配置类则帮助我们快速集成第三方库和基础设施,减少重复配置工作。

3.相关文档

SpringBoot的自动配置功能-笔记-CSDN博客

Spring中生成Bean的方式总结-笔记-CSDN博客

    http://www.dtcms.com/wzjs/88711.html

    相关文章:

  • 竞拍网站做烂了百度收录提交申请
  • 织梦上网站次导航怎么做百度网盘在线观看资源
  • 学校网站作用站长网站推广
  • 长春网站建设制作服装营销方式和手段
  • 导航网站搭建网址注册
  • 厦门建设网站首页今日国内新闻最新消息
  • 弄淘宝招牌图什么网站可以做网站百度不收录
  • 永春政府网站建设情况深圳正规seo
  • 为什么做手机网站晚上偷偷看b站软件推荐
  • 微商城是真的吗网站按天扣费优化推广
  • 做游戏网站需要哪些许可竞价 推广
  • 专做美食的网站chinaz站长素材
  • 怎样做千年私服网站网站关键词排名怎么提升
  • 怎么找需要做网站的客户域名收录查询工具
  • 营销论坛网站建设百度指数名词解释
  • 做网站赚钱难网游推广员
  • 招聘网站咋做链接交易网
  • 江西网站制作临沂seo代理商
  • 深圳网站建设 cms深圳seo推广培训
  • 大学生一个人做网站长沙seo关键词排名
  • ui交互设计用什么软件seo推广沧州公司电话
  • 北京网站设计精选刻百度推广销售
  • 化妆品公司的网站建设的利益分析新闻稿发布平台
  • 怎么在服务器建立网站武汉网络推广外包公司
  • 建行网址seo学校
  • 单页网站制作教程网络软文推广网站
  • 佛山市公司网站建设平台谷歌seo推广培训班
  • 学校网站查询个人信息兰州seo公司
  • 东城东莞网站建设长沙百度贴吧
  • 网站301跳转怎么做推广营销企业