首页 > 技术文章 > Spring Boot学习笔记

shiqianqianya 2020-10-24 11:25 原文

一、Spring Boot简介

Spring Boot是作为Java企业版(Java Enterprise Edition,JEE,也称为J2EE)的轻量级替代品而诞生的。Spring Boot无需开发重量级的EJB,为企业级Java开发提供了一种相对简单的方法,通过依赖注入和面向切面编程,用简单的Java对象实现了EJB的功能。

虽然Spring Boot的组件代码是轻量级的,但是它的配置是重量级的。Spring的配置经历了三个阶段,分别是XML配置,注解配置,Java配置,这三个配置阶段分别对应着Spring 1.x,Spring 2.x和Spring 3.x,所有的这些配置都代表了开发时的耗损,并且使用Spring时还要考虑各个版本之间的兼容性,总而言之,Spring的使用过程中存在着许多令人头痛的问题。但是Spring Boot的出现为这些问题的解决提供了方法。

Spring Boot简化了基于Spring的应用开发,为Spring平台及第三方平台提供开箱即用的设置(也就是提供默认设置),多数的Spring Boot应用只需要很少的Spring配置。

 

二、Spring Boot的主要目标

1、为所有的Spring开发提供一个从根本上更快的入门体验

2、开箱即用,但通过自己设置参数即可快速摆脱这种方式

3、提供一些大型项目中常见的非功能性特性,如内嵌服务器、安全、指标、健康检测、外部化配置等

4、绝无代码生成,也无需XML配置

 

三、Spring Boot的基础配置

1、关闭特定的自动配置,代码如下所示

@SpringBootApplication(exclude = {DataSourceAutoConfiguration.class})

 

 

 2、Spring Boot配置文件

springboot使用一个全局的配置文件application.properties或者application.yml,放置在src/main/resources目录。

(1)通过注解@Value读取配置文件信息

 

 

 

 (2)通过对像注入方式读取配置文件

 

 

 

 

 

 

四、Spring Boot的日志配置

(1)pom引入lombok

 <dependency>
     <groupId>org.projectlombok</groupId>
     <artifactId>lombok</artifactId>
     <optional>true</optional>
 </dependency>

(2)通过@Slf4j注解引入日志

package com.example.demo;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import sun.awt.SunHints;
@RestController
@Slf4j
public class HelloController {
    /*@Value("${name}")
    private String name ;
    @Value("${csdnUrl}")
    private String csdnUrl ;*/
    @Autowired
    private Author author;
    @RequestMapping(value = "hello")
    public String Hello()
    {
        try {
            log.error("错误");
            throw new Exception("错误");
        } catch (Exception e) {
            e.printStackTrace();
        }
        return "Hello World!"+"我的名字是:"+author.getName()+",博客地址:"+author.getCsdnUrl();
    }
}
 (3)在application.yml里面配置日志基本信息
logging:
  level:
    root: info
    org.springframework.security: warn
    org.springframework.web: DEBUG
    com.example : info
  # 默认日志文件名
  # file: log
  # 默认日志路径
  path: E:/log
 
五、Spring Boot的Profile配置
Profile是Spring用来针对不同的环境进行不同的配置提供支持的,全局Profile配置使用application-{profile}.yml。

 

 

 

 在application.yml里面,设置要使用的profile文件,如下:

 

 

 

五、小结

(1)Spring Boot的定义

Spring Boot是伴随着Spring4.0共同诞生的,它的目的就是简化Spring的配置及开发 ,并协助开发人员整体管理应用程序的配置,而不用和从前那样做大量的配置工作。Spring Boot提供了很多开发组件,其目的是使开发变得简单并提高开发人员的开发效率。

(2)Spring Boot的作用

Spring Boot框架其功能非常简单,就是帮我们实现自动配置,还可以帮助我们快速的搭建企业级的应用程序并使用。

(3)Spring Boot的核心功能

1、不依赖Tomcat等外部容器来独立的运行WEB项目

2、嵌入式的Servlet容器

3、使pom文件配置更简化

4、能够在生产环境中直接使用性能指标、健康检查、和应用信息等

5、不需要任何xml文件配置而能实现所有的Spring配置

(4)Spring Boot的三个核心注解

@SpringBootApplication——用于读取spring.factories文件

@SpringBootConfiguration——

@EnableAutoConfiguration——具有配置功能

 

 

 

 

 

推荐阅读