IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> Java知识库 -> Spring Boot基础 -> 正文阅读

[Java知识库]Spring Boot基础

目录

1.什么是Spring Boot?

1.1Spring Boot优点

1.2第一个Spring Boot项目

2.Spring Boot配置文件

2.1配置文件的作用

2.2配置文件的格式

2.3properties 基本语法

3.读取配置文件

3.1读取配置文件方法1?

3.2properties缺点

3.3读取配置文件方法2

?3.4读取配置文件方法3

?编辑

3.5?properties VS yml 总结

4.Spring Boot日志文件

4.1日志文件的作用

4.2日志的使用

?4.3自定义打印日志

4.3.1在程序中获取日志对象和打印日志

4.4日志级别

?5.日志的持久化

6.lombok简单获取日志并打印日志

6.1 lomnok原理解释


1.什么是Spring Boot?

? ? ? ?Spring Boot就类似于盖房子的脚手架,可以快速的帮助我们盖房子。而Spring Boot则可以帮助我们快速的开发Spring框架。

1.1Spring Boot优点

1)快速集成框架,Spring Boot 提供了启动添加依赖的功能,?于秒级集成各种框架。

2)内置运?容器,?需配置 Tomcat 等 Web 容器,直接运?和部署程序。

3)快速部署项?,?需外部容器即可启动并运?项?。

4)可以完全抛弃繁琐的 XML,使?注解和配置的?式进?开发。 ?持更多的监控的指标,可以更好的了解项?的运?情况。

1.2第一个Spring Boot项目

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
@Controller
public class UserController {
    
    @RequestMapping("/hi")
    @ResponseBody//返回给浏览器一个接口数据而非页面
    public String sayHi(String name){

        return "Hi, " + name;
    }
}

?因为之前的设置,这里的端口号是8888.

这里我们注意要把注入到容器类和启动类放在同一级目录下,这时Spring Boot才能正确的将bean注入到容器中

?小结:约定大于配置

对? Spring 的项?我们也可以看到这?特点,?如在 Spring 中也是要配置 Bean 的扫描路径的,? Spring Boot 则不需要,Spring 配置如下:

?总之Spring Boot是为了快速开发Spring而诞生的,Spring Boot具备:

1)快速集成框架,Spring Boot 提供了启动添加依赖的功能,?于秒级集成各种框架。

2)内置运?容器,?需配置 Tomcat 等 Web 容器,直接运?和部署程序。

3)快速部署项?,?需外部容器即可启动并运?项?。

4)可以完全抛弃繁琐的 XML,使?注解和配置的?式进?开发。 ?持更多的监控的指标,可以更好的了解项?的运?情况等特点。

2.Spring Boot配置文件

2.1配置文件的作用

整个项目中所有重要的数据都是在配置文件中配置的:比如:

1)数据库的连接信息(包含用户名和密码的设置)

2)项目的启动端口

3)第三方系统的调用密钥等信息

4)用于发现问题和定位问题的普通日志和异常日志

如果没有配置文件,我们甚至不能连接和操作数据库,甚至时不能保存可以用于排查问题的关键日志,所以配置文件的作用非常重要。

2.2配置文件的格式

1).properties

2).yml

? ? ? ? ?这就好像连锁店??的统?服装?样,有两种不同的款式,properties 类型的配置?件就属于?款“服 饰”,也是创建 Spring Boot 项?时默认的?件格式(主要是由于仓库?还有库存),? yml 属于新版 款式,如果?户了解情况直接指定要新款服饰,那么就直接发给他。

说明:这里的两种配置文件可以在一个项目中同时存在,但是如果配置文件中出现了相同的配置,我们优先以properties 中的配置为主,也就是.properties 配置?件的优先级最?,但加载完 .properties ?件之后,也会加载 .yml ?件的配置信息。? 但是实际上我们通常会采取一种统一的格式。

2.3properties 基本语法

properties 是以键值的形式配置的,key 和 value 之间是以“=”连接的,如:

3.读取配置文件

3.1读取配置文件方法1?

如果在项?中,想要主动的读取配置?件中的内容,可以使? @Value 注解来实现。 @Value 注解使?“${}”的格式读取,如下代码所示:

import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Component;
import javax.annotation.PostConstruct;
@Component
public class ReadYml {
    @Value("${server.port}")
    private String port;
    //@Component 在 Spring Boot 启动时候会注?到框架中,注?到框架中时会执? @PostConstruct 初
    //始化?法,这个时候就能读取到配置信息了。
  @PostConstruct 
   public void postConstruct() {
        System.out.println("Read YML,port:" + port);
   }
}

?

3.2properties缺点

properties是以key-value的形式配置的:

yml配置文件的读取也可以使用上面的@Value,此外还有下面两种读法?

3.3读取配置文件方法2

?用@ConfigurationProperties读取一个实体类

?

?3.4读取配置文件方法3

配置文件也可以配置list集合:

3.5?properties VS yml 总结

1)? properties 是以 key=value 的形式配置的键值类型的配置?件,? yml 使?的是类似 json 格式的 树形配置?式进?配置的,yml 层级之间使?换?缩进的?式配置,key 和 value 之间使?“: ”英? 冒号加空格的?式设置,并且空格不可省略。

2)? properties 为早期并且默认的配置?件格式,但其配置存在?定的冗余数据,使? yml 可以很好的 解决数据冗余的问题。

3)? yml 通?性更好,?持更多语?,如 Java、Go、Python 等,如果是云服务器开发,可以使??份 配置?件作为 Java 和 Go 的共同配置?件。

4)yml 虽然可以和 properties 共存,但?个项?中建议使?统?的配置类型?件。

4.Spring Boot日志文件

4.1日志文件的作用

日志是程序的重要组成部分,如果程序报错了,不打开控制台看日志,是无法找到报错的原因的。除了发现问题和报错原因之外,我们还可以通过日志实现以下功能:

1)记录?户登录?志,?便分析?户是正常登录还是恶意破解?户。

2)记录系统的操作?志,?便数据恢复和定位操作?。

3)记录程序的执?时间,?便为以后优化程序提供数据?持。

4.2日志的使用

我们的Spring Boot项目在使用的时候,默认就有日志输出,如:

?4.3自定义打印日志

4.3.1在程序中获取日志对象和打印日志

日志说明:

?

因为 Spring Boot 中内置了?志框架 Slf4j,所以咱们可以直接在程序中调? slf4j 来输出?志。

常用的日志框架:

4.4日志级别

?

?5.日志的持久化

以上的?志都是输出在控制台上的,然?在?产环境上咱们需要将?志保存下来,以便出现问题之后追 溯问题,把?志保存下来的过程就叫做持久化。

想要将?志进?持久化,只需要在配置?件中指定?志的存储?录或者是指定?志保存?件名之后, Spring Boot 就会将控制台的?志写到相应的?录或?件下了。

?这样我们就将日志存储到了文件下面

6.lombok简单获取日志并打印日志

1)添加lombok依赖

?

6.1 lomnok原理解释

?

?不仅如此,我们的setter共和getter方法也是一样

总结:

? ? ? ?志是程序中的重要组成部分,使??志可以快速的发现和定位问题,Spring Boot 内置了?志框架, 默认情况下使?的是 info ?志级别将?志输出到控制台的,我们可以通过 lombok 提供的 @Slf4j 注解 和 log 对象快速的打印?定义?志,

?志包含 6 个级别:

trace:微量,少许的意思,级别最低;

info:普通的打印信息;

debug:需要调试时候的关键信息打印;

warn:警告,不影响使?,但需要注意的问题;

error:错误信息,级别较?的错误?志信息;

fatal:致命的,因为代码异常导致程序退出执?的事件。 ?志级别依次提升,??志界别越?,收到的?志信息也就越少,我们可以通过配置?志的保存名称或 保存?录来将?志永久地保存下来。

  Java知识库 最新文章
计算距离春节还有多长时间
系统开发系列 之WebService(spring框架+ma
springBoot+Cache(自定义有效时间配置)
SpringBoot整合mybatis实现增删改查、分页查
spring教程
SpringBoot+Vue实现美食交流网站的设计与实
虚拟机内存结构以及虚拟机中销毁和新建对象
SpringMVC---原理
小李同学: Java如何按多个字段分组
打印票据--java
上一篇文章      下一篇文章      查看所有文章
加:2022-06-29 18:51:47  更:2022-06-29 18:53:51 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/23 17:20:59-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码