之前简单接触了一些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. 通过Class类获取对象实例

    通过Class对象获取对象的方式是通过class.newInstance()方式获取,通过调用默认构造参数实例化一个对象. /** * Created by hunt on 2017/6/27. * ...

  2. hdu 1253 胜利大逃亡 (广搜)

    题目链接 Problem Description Ignatius被魔王抓走了,有一天魔王出差去了,这可是Ignatius逃亡的好机会. 魔王住在一个城堡里,城堡是一个ABC的立方体,可以被表示成A个 ...

  3. 凸包入门(Graham扫描法)(A - Wall POJ - 1113)

    题目链接:https://cn.vjudge.net/contest/276359#problem/A 题目大意:有一个国王,要在自己的城堡周围建立围墙,要求围墙能把城堡全部围起来,并且围墙距离城堡的 ...

  4. Css中实现一个盒子固定宽度,另一个盒子宽度自适应的方法

    Css中实现一个盒子固定宽度,另一个盒子宽度自适应的方法 网上方法很多,个人认为以下两种思想是最为常用的. 一种是让第一个盒子脱离文档流,第二个盒子离左边有一定距离. 第二种方法是使用flex布局,不 ...

  5. 【codeforces】【比赛题解】#861 CF Round #434 (Div.2)

    本来是rated,现在变成unrated,你说气不气. 链接. [A]k-凑整 题意: 一个正整数\(n\)的\(k\)-凑整数是最小的正整数\(x\)使得\(x\)在十进制下末尾有\(k\)个或更多 ...

  6. JDOM生成XML文档的一般方法

    由于DOM提供的生成XML的方法不够直观,而且要用到各种繁琐的注解,鉴于此可借助第三方库-----JDOM生成XML文档.具体操作方式如下: import java.io.FileOutputStre ...

  7. iptables详细设置

    1.安装iptables防火墙 怎么知道系统是否安装了iptables?执行iptables -V,如果显示如: iptables v1.3.5 说明已经安装了iptables. 如果没有安装ipta ...

  8. js如何查看元素类型

    <script type="text/javascript"> //定义变量temp var temp = Object.prototype.toString.appl ...

  9. unity 优秀开源项目

    ihaiu.GUIDRef (查看项目资源使用情况) http://blog.ihaiu.com/unity-GUIDRef Ihaiu.PoolManager (对象池) http://github ...

  10. cocos2dx中调用TinyXml读取xml配置文件 || cocos2d-x 中跨平台tinyxml读取xml文件方式

    TiXmlDocument *doc = newTiXmlDocument; #if (CC_TARGET_PLATFORM ==CC_PLATFORM_ANDROID) //Android平台tin ...