Spring Boot 核心注解与配置文件

一、入口类与@SpringBootApplication 注解

Spring Boot项目都会有一个*Application 类,这个类作为Spring Boot 项目的入口类,在这个入口类中有main 方法,如果我们想要运行该项目,可以在该入口类中run 我们的项目。

@SpringBootApplication 注解是Spring Boot 的核心注解,查看源码后,你就会发现它其实是一个组合注解。

@Target(ElementType.TYPE)
@Retention(RetentionPolicy.RUNTIME)
@Documented
@Inherited
@SpringBootConfiguration
@EnableAutoConfiguration
@ComponentScan(excludeFilters = {
        @Filter(type = FilterType.CUSTOM, classes = TypeExcludeFilter.class),
        @Filter(type = FilterType.CUSTOM, classes = AutoConfigurationExcludeFilter.class) })

我们主要了解下面三个关于Spring Boot 的注解:

  • @SpringBootConfiguration:这是Spring Boot 项目的相关配置注解,其实它也是一个组合注解。
  • @EnableAutoConfiguration:启用自动配置,该注解会使Spring Boot根据项目中依赖的jar包自动配置项目的配置项:如:我们添加了spring-boot-starter-web的依赖,项目中也就会引入SpringMVC的依赖,并且Spring Boot会自动配置tomcat 和SpringMVC。
  • @ComponentScan:默认扫描@SpringBootApplication 所在类的同级目录以及它的子目录。
二、关闭自动配置

在默认的情况下,Spring Boot会根据项目中的jar包依赖,自动做出配置,Spring Boot支持的自动配置非常多。如果我们想要关闭一些自动配置的话,我们可以通过手动修改核心注解配置我们不想要自动配置的jar 包。比如(但是一般我们不这么做):

@SpringBootApplication(exclude = {DispatcherServlet.class})
三、自定义Banner

在我们启动Spring Boot 项目的时候会在控制台输出一个SPRING 的图案。我们可以对这个图案做出修改也可以关闭输出图案。
这里写图片描述

自定义图案链接~可以通过这个链接自定义你想要输出的图案,然后把你想要自定义的图案拷贝出来,将该文件命名为banner.txt 放到resources 目录中。当我们再次启动项目的时候就会发现控制台输出的图案发生了变化。
这里写图片描述
当然我们也可以关闭控制台输出团案:我们只要修改入口类中的main 方法中的代码即可

    public static void main(String[] args) {
        //SpringApplication.run(SpringbootTestApplication.class, args);
        SpringApplication application = new SpringApplication(SpringbootTestApplication.class);
        application.setBannerMode(Banner.Mode.OFF);
        application.run(args);
    }
四、Spring Boot 全局配置文件

Spring Boot项目使用一个全局的配置文件application.properties或者是application.yml,在resources目录下或者类路径下的/config下,一般我们放到resources下。在这个配置文件中你可以做一些服务器与Spring 的相关配置以及日志打印等等(在这个配置文件中可以作大量的配置)。比如下面我修改了DispatcherServlet 的规则为*.acrion,当我在想要访问控制器中的”hello”时,必须要访问”hello.action”:
这里写图片描述

五、Xml 配置文件

虽然Spring Boot 已经为我们做了很多的配置,但是如果在相关的项目中你仍然需要xml 文件做一些额外的配置,那么Spring Boot 也是支持的。你可以在入口类通过@ImportResource 进行xml 配置文件的导入并且支持对多个xml 文件的配置。

@ImportResource({"classpath:*.xml","classpath:**.xml"})
  • 2
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值