之前简单接触了一些Spring Boot ,并且写了一个简单的 Demo 。本文就来简单学习一下 Spring Boot 的基础配置。

一、Spring Boot 项目入口

  上文中有写到,Spring Boot 项目需要一个入口类,并且入口类要使用 @SpringBootApplication 注解,项目启动时回去找这个有这个注解的类的 main 方法并执行。

 /**
* 项目入口
*/
@SpringBootApplication
public class App {
public static void main(String[] args) {
SpringApplication.run(App.class, args);
}
}

  @SpringBootApplication 注解是一个组合注解,它是由 @SpringBootConfiguration 、@EnableAutoConfiguration 、 @ComponentScan 三个注解组合而成,所以 @SpringBootApplication注解可以被上面三个注解所替代。

 /**
* 项目入口
* @author wuyouxin
*
*/
@SpringBootConfiguration
@EnableAutoConfiguration
@ComponentScan
public class App {
public static void main(String[] args) {
SpringApplication.run(App.class, args);
}
}

  @SpringBootConfiguration 注解的作用与@Configuration的作用一样,都是将此类标注为一个配置类,并且将当前类声明为一个或多个以@Bean注解标记的方法的实例纳入到spring容器中,实例名为方法名。

  @EnableAutoConfiguration 注解为启用自动配置,该注解会使springBoot根据项目中依赖的jar包自动配置项目的配置项,如果我们在项目中添加了spring-boot-starter-web和springMVC的依赖,则会自动为我们配置tomcat和springMVC。  

  @ComponentScan注解则会扫描@SpringBootApplication注解类同级目录以及子目录。

、Spring Boot 关闭自动配置

  我们知道,springBoot项目会根据项目中的jar包依赖,会做许多自动配置,而这些配置非常多,有很多我们时不需要用到的,那么这些自动配置我们其实是可以关闭的。

  我们打开maven Dependencies 找到 spring-boot-autoconfigure,这个jar包下面的所有的包都是springBoot帮我们做了自动化配置的。

  假如我们现在不想让springBoot帮我们自动化配置cache和gson,我们就可以打开这两个包找到配置类,然后在我们的@SpringBootConfiguration注解中进行剔除。

  这样,springBoot就不会帮我们自动化配置cache和gson了。

、Spring Boot 自定义banner

  在springBoot启动时,我们会发现在控制台都会有一个图标,如下图:

  这个被我们称作banner,而这个banner我们是可以自定义的,我们将自己绘制好到字符串复制到txt文件中,将其放入resources目录下:

  上面方法就可以改变banner,大家可以根据自己随意设计,当然,这个banner也可以让它不显示。

/**
* 这里的SpringBootApplication 就是在指定一个Spring Boot 的应用
* @author Wuyouxin
*/
@SpringBootApplication(exclude = {CacheAutoConfiguration.class,
GsonAutoConfiguration.class})
public class App{
public static void main( String[] args ) {
//在Main方法中启动应用程序
//SpringApplication.run(App.class, args);
SpringApplication application = new SpringApplication(App.class);
application.setBannerMode(Mode.OFF);
application.run(args);
}
}

  上面的写法,就可以关闭banner的显示。

-------------------- END ---------------------

最后附上作者的微信公众号地址和博客地址

公众号:wuyouxin_gzh

Herrt灬凌夜:https://www.cnblogs.com/wuyx/

Spring Boot 基础配置的更多相关文章

  1. Spring Boot 基础

    Spring Boot 基础 Spring Boot 项目(参考1) 提供了一个类似ASP.NET MVC的默认模板一样的标准样板,直接集成了一系列的组件并使用了默认的配置.使用Spring Boot ...

  2. Spring Boot 基础教程系列学习文档

    Spring Boot基础教程1-Spring Tool Suite工具的安装 Spring Boot基础教程2-RESTfull API简单项目的快速搭建 Spring Boot基础教程3-配置文件 ...

  3. spring boot基础 入门

    spring boot基础 spring boot 的简单搭建 spring boot 的基本用法 spring boot 基本用法 自动配置 技术集成 性能监控 源码解析 工程的构建 创建一个mav ...

  4. Spring Boot基础知识

    Spring Boot 是微服务中最好的 Java 框架. 我们建议你能够成为一名 Spring Boot 的专家. 问题一 Spring Boot.Spring MVC 和 Spring 有什么区别 ...

  5. Spring Boot 日志配置

    Spring Boot 日志配置 默认日志 Logback: 默认情况下,Spring Boot会用Logback来记录日志,并用INFO级别输出到控制台.在运行应用程序和其他例子时,你应该已经看到很 ...

  6. spring boot基础学习教程

    Spring boot 标签(空格分隔): springboot HelloWorld 什么是spring boot Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新 ...

  7. Spring Boot 自动配置的原理、核心注解以及利用自动配置实现了自定义 Starter 组件

    本章内容 自定义属性快速入门 外化配置 自动配置 自定义创建 Starter 组件 摘录:读书是读完这些文字还要好好用心去想想,写书也一样,做任何事也一样 图 2 第二章目录结构图 第 2 章 Spr ...

  8. Spring Boot 基础,理论,简介

    Spring Boot 基础,理论,简介 1.SpringBoot自动装配 1.1 Spring装配方式 1.2 Spring @Enable 模块驱动 1.3 Spring 条件装配 2.自动装配正 ...

  9. Spring Boot自动配置实战

    上篇讲述了Spring Boot自动配置的原理,本篇内容就是关于该核心原理的实际应用.需求即当某个类存在的时候,自动配置这个类的bean并且这个bean的属性可以通过application.prope ...

随机推荐

  1. KDE下安装fcitx后终端不能输入中文

    编辑用户的  ~/.profile 文件(或/etc/profile): #fcitx export XIM_PROGRAM=fcitx export XIM=fcitx export GTK_IM_ ...

  2. perl6: hash小笔记

    > ,,, { => , => } > my $a = :%h h => { => , => } > $a.perl :h({, }) > my ...

  3. Oracle Certified Java Programmer 经典题目分析(二)

    ...接上篇 what is reserved(保留) words in java? A. run B. default C. implement D. import Java 关键字列表 (依字母排 ...

  4. CentOS_5.5_安装GCC编译LiME

    1 概述 近期遇到个使用CentOS 5.5的系统,生产环境没有GCC.GDB.要对这台机器抓取关键内存回去用volatility分析. 思路1:使用工具Dump某个进程的内存.使用cat /proc ...

  5. 对于Linux平台下C语言开发中__sync_函数的认识(转)

    reference:http://gcc.gnu.org/onlinedocs/gcc-4.1.0/gcc/Atomic-Builtins.html#Atomic-Builtins A built-i ...

  6. pl/sql developer 设置oracle的date类型默认显示样式

    oracle里默认的date显示样式: 我的是汉化过的: 进入后,点击工具->首选项->日期/时间设置即可: 设置后在pl/sql developer中查看: 英文版的操作步骤: Tool ...

  7. ProtocolBuffer 使用及 一些坑

    Protocol Buffers,是Google公司开发的一种数据描述语言,类似于XML能够将结构化数据序列化,可用于数据存储.通信协议等方面. ProtocolBuffer的优势 跨平台: Prot ...

  8. Django BoundField

    一.BoundField from django.forms.boundfield import BoundField BoundField是一个将字段添加数据的一个类,给对应的form字段封装上数据 ...

  9. React-Native 之 FlexBox介绍和使用

    # 前言 学习本系列内容需要具备一定 HTML 开发基础,没有基础的朋友可以先转至 HTML快速入门(一) 学习 本人接触 React Native 时间并不是特别长,所以对其中的内容和性质了解可能会 ...

  10. mysql高可用架构 -> MHA配置binlog-server-06

    前期准备 1.准备一台新的mysql实例(db03),GTID必须开启. 2.将来binlog接收目录,不能和主库binlog目录一样 停止mha masterha_stop --conf=/etc/ ...