SpringBoot复习(一)
创始人
2024-05-11 13:15:24

底层注解

@Configuration

blog.csdnimg.cn/e3ad84c42e68480ca3572c518bb88802.png)

自定义配置类
@Bean:
可以通过@Bean注解将方法的返回值交给ioc容器来管理
组件id为方法名,组件的类型就是方法的返回类型。
默认组件是单例的
@Configuration:
告诉springboot这是一个配置类==之前的配置文件
配置类本身也是组件,由springioc管理
@Configuration(proxyBeanMethods = true)
表示代理对象调用方法,springboot会检查这个配置类中的组件是否在容器中,来保持组件单例

@Import

向ioc容器中添加组件,默认名字就是全类名

启动类中测试代码:

@SpringBootApplication
public class SpringbootLearn01Application {public static void main(String[] args) {//获取IOC容器ConfigurableApplicationContext run = SpringApplication.run(SpringbootLearn01Application.class, args);String[] beanNamesForType = run.getBeanNamesForType(User.class);for(String e:beanNamesForType){System.out.println(e);}}}

在这里插入图片描述
第一个就是@import添加的组件,第二个是通过@Bean向ioc中添加的组件

Conditional

条件装配:满足Conditional指定的条件,则进行组件注入

@ImportResource

导入spring配置文件,使其生效

@ImportResource("applicationContext.xml")

配置绑定@ConfigurationProperties

使用@ConfigurationProperties(prefix = “xxx”)来进行配置绑定的时候要确保bean在容器中,可以通过在实体类上添加@Component或者在配置文件中@EnableConfigurationProperties(类.class)
yml中:
在这里插入图片描述

第一种@Component+ConfigurationProperties(prefix = “Car”)

Car类:

package com.mao.exercise.pojo;import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.stereotype.Component;@Data
@AllArgsConstructor
@NoArgsConstructor
@Component
@ConfigurationProperties(prefix = "car")
public class Car {private String id;private String name;private double price;
}

测试:
在这里插入图片描述

第二种@EnableConfigurationProperties(Car.class)+ConfigurationProperties(prefix = “Car”)

Car类
在这里插入图片描述
配置文件:
在这里插入图片描述

相关内容

热门资讯

新华视点|文旅新体验让传统“潮... ■当敦煌壁画遇上花灯敦煌灯会以“千年华彩 盛世敦煌”为主题,主要分为三个区域:敦煌夜市商业街、西域路...
玉米淀粉商品报价动态(2026... 生意社01月10日讯 交易商品牌/产地交货地最新报价玉米淀粉 食品级含量99河南汇亿海...
欧空局向“可回收”低头,计划魔...   炒股就看金麒麟分析师研报,权威,专业,及时,全面,助您挖掘潜力主题机会! (来源:IT之家)I...
“马”上尝鲜,进一步激发新春消... (来源:劳动报)转自:劳动报依托供应链升级与“金牌挑手”严选体系,联华于2026新年之际,正式推出“...
华硕 CES 2026亮点速递... 在CES 2026这场科技盛会上,华硕携众多新品亮相。除了主板等核心PC硬件,迷你主机产品线也迎来重...