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

SpringBoot学习day3-SpringBoot注解开发(新闻项目后段基础)

SpringBoot注解

**@SpringBootApplication**是 springboot 核心注解,其中包含

@SpringBootConfiguration

它的主要作用是:

  • 作为 Spring Boot 应用的配置入口点
  • 可以使用@Bean注解在该类中定义 Spring Bean
  • 通常与@EnableAutoConfiguration@ComponentScan一起使用

**@EnableAutoConfiguration**它能根据 classpath 中的依赖自动配置 Spring 应用

它的主要作用是:

  • 根据添加的依赖自动配置 Spring 应用上下文
  • 例如,当 classpath 中存在 Tomcat 依赖时,自动配置嵌入式 Tomcat 服务器
  • 可以通过exclude属性排除特定的自动配置类
  • 工作原理是基于 META-INF/spring.factories 文件中的配置

**@ComponentScan**这个注解告诉 Spring 在哪里扫描组件(如@Component@Service@Repository@Controller等)

它的主要作用是:

  • 自动扫描指定包及其子包中的组件
  • 找到并注册带有 Spring 组件注解的类
  • 如果不指定basePackages,默认从声明该注解的类所在的包开始扫描
  • 可以使用includeFiltersexcludeFilters自定义扫描规则

@Configuration

加入@Configuration 注解,表明这就是一个配置类。有一个myBean()的方法
并用@Bean 进行注释,返回一个MyBean()的实例,表明这个方法是需要被
Spring 进行管理的bean。@Bean 如果不指定名称的话,默认使用myBean
名称,也就是小写的名称。

@Bean

相当于XML中的,放在方法的上面,而不是类,意思是产生一 个bean,并交给spring管理

运用实例

/*
* @Configuration注解表明这是一个配置类,可以包含@Bean注解的方法,这些方法将会在Spring容器中注册为Bean。
* */
@Configuration
public class CorsConfig {@Beanpublic CorsFilter corsFilter() {CorsConfiguration corsConfiguration = new CorsConfiguration();//1,允许任何来源corsConfiguration.setAllowedOriginPatterns(Collections.singletonList("*"));//2,允许任何请求头corsConfiguration.addAllowedHeader(CorsConfiguration.ALL);//3,允许任何方法corsConfiguration.addAllowedMethod(CorsConfiguration.ALL);//4,允许凭证corsConfiguration.setAllowCredentials(true);UrlBasedCorsConfigurationSource source = new UrlBasedCorsConfigurationSource();source.registerCorsConfiguration("/**", corsConfiguration);return new CorsFilter(source);

http://www.xdnf.cn/news/14531.html

相关文章:

  • Java中的CAS与ABA
  • Leetcode 刷题记录 14 —— 回溯
  • 什么是装饰器?
  • UE5错误 Linux离线状态下错误 circular dependency detected;includes/requires
  • chapter06-针对分类的微调
  • 实战指南:部署MinerU多模态文档解析API与Dify深度集成(实现解析PDF/JPG/PNG)
  • 【RAG文档解析】深度剖析 PDF 解析的痛点与方案
  • springboot集成dubbo
  • LangChain调用本地modelscope下载的Deepseek大模型
  • Python打卡第54天
  • 13分钟讲解主流Linux发行版
  • origin绘制双Y轴柱状图、双Y轴柱状点线图和双Y轴点线图
  • Node.js验证码:从生成到验证的趣味之旅
  • 条件收敛的级数中项必须趋于 0,正负项抵消,但趋于 0 的速度不需要“足够快”
  • 【学习笔记】深入理解Java虚拟机学习笔记——第9章 类加载及执行子系统的案例与实战
  • 深度学习进化史:从神经元的诞生到万亿参数的觉醒
  • 掌握这些 Python 函数,让你的代码更简洁优雅
  • Git基本使用
  • npm install报错
  • Hudi 与 Hive 集成
  • https说明
  • RV1126+OPENCV对视频流单独进行视频膨胀/腐蚀操作
  • Spring AI 项目实战(八):Spring Boot + AI + DeepSeek 打造企业级智能文档分类系统
  • 40套精品大气黑金系列行业PPT模版分享
  • Web后端基础:数据库
  • 【JavaScript-Day 42】深入解析事件冒泡与捕获:掌握事件委托的精髓
  • 2、Java流程控制:编程界的“逻辑游乐场”
  • Leetcode 刷题记录 12 —— 二叉树第三弹
  • 六月十五号Leetcode
  • Apache Iceberg与Hive集成:非分区表篇