SpingBoot-JavaConfig-标签解释

为什么SpringBoot会打成jar包的方式,就是打包jar包 没有webApp目录,因为SpringBoot注解把项目打成jar包部署到内嵌的tomcat中,为什么会有tomcat呢? 因为spring-boot-starter-web包里嵌入了一个tomcat,SpringBoot默认内置了一个tomcat 不需自己部署tomcat

配置的一些扫描为什么不需要配置了 因为SpringBoot有自动配置功能

@SpringBootApplication

    @SpringBootConfiguration:它的本质就是 @Configuration,Spring的配置标签

    @EnableAutoConfiguration:开启自动配置

    @ComponentScan:开启组件扫描

SpringApplication.run:启用/运行引用

1: 加载配置类,2:解析配置类:实现扫描组件,实现自动装配等等..,3:打包项目,部署到tomcat中,4:启动tomcat


@Configuration :Spirng的配置标签,打在某个类上,这个类就可以被是被为Spring的配置类

@Bean:  Spring的Bean标签打在方法上,那么该方法返回的实例对象就可以交给Spring容器管理



IOC组件扫描

@Compoent,@Service...的类 直接交给Spring管理,  @CompoentScan会去扫描这些组件 当然在启动类上已经有了@SpringBootApplication 则里面有包含@CompoentScan此注解


Bean的详情

     bean的id:就是方法的名字

     bean的name:通过 @Bean标签的 name 属性去指定

     bean的 scope : @Scope("prototype")

     bean的 初始化方法: 通过 init-method="" 属性去指定

     bean的销毁方法:通过 destroy-method="" 属性去指定

SpringBoot测试类 



配置之间的引入

@Import(xxx.class) 相当于引入一个文件

@ImportResource("classpath:applicatContext.xml") 导入配置文件

@PropertySource("classpath:jdbc.properties") 导入资源文件到当前环境中 加value一起使用

第一种方式

第二种方式



@Profile和@ActiveProfiles

@Profile配置

@ActiveProfiles 指定当前活动的配置环境要

假设一个测试环境 一个是开发环境 如果你想随时切换 环境的话 

比如在测试环境类上贴@Profile("test") 在开发环境上贴@Profile("dev")

当你在启动类上贴@ActiveProfiles("test")  就会执行测试环境 你要贴@ActiveProfiles("dev")就会执行开发环境 就是一个环境切换

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。