国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

SpringBoot(項(xiàng)目創(chuàng)建使用+配置文件+日志文件)

這篇具有很好參考價(jià)值的文章主要介紹了SpringBoot(項(xiàng)目創(chuàng)建使用+配置文件+日志文件)。希望對大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

目錄

1. Spring Boot 項(xiàng)目創(chuàng)建

2. 寫一個(gè) Hello World 并運(yùn)行

3. 配置文件的作用及格式

4. properties 配置文件的基本語法?

5. 讀取配置文件

6. yml 配置文件說明

7. properties 和 yml 的區(qū)別

8. SpringBoot 日志文件

8.1 日志的作用

8.2 自定義日志打印

8.3 日志的級別

8.4 日志持久化

8.5 更簡單的實(shí)現(xiàn)日志打印lombok


Spring的出現(xiàn)是為了簡化 Java 程序開發(fā),而 SpringBoot 的出現(xiàn)是為了簡化 Spring 程序開發(fā).

SpringBoot 就是 Spring腳手架

  • 快速集成框架,SpringBoot 提供了啟動(dòng)添加依賴的功能
  • 內(nèi)置運(yùn)行容器,無需配置 Tomcat 等 Web 容器, 直接運(yùn)行和部署程序
  • 快速部署項(xiàng)目,無需外部容器即可啟動(dòng)并運(yùn)行項(xiàng)目
  • 可以完全拋棄繁瑣的 XML, 使用注解和配置的方式進(jìn)行開發(fā)
  • 支持更多的監(jiān)控指標(biāo), 可以更好的了解項(xiàng)目的運(yùn)行情況

1. Spring Boot 項(xiàng)目創(chuàng)建

我這里是專業(yè)版,不用下載插件直接可以創(chuàng)建

第一次打開 SpringBoot 項(xiàng)目需要加載很久, 因?yàn)楫?dāng)前 SpringBoot 框架并沒有在自己的本地倉庫

springboot 寫文件,JavaEE,spring boot,java,spring

(2) 選取 SpringBoot 的版本, 和需要使用的工具包??

springboot 寫文件,JavaEE,spring boot,java,spring

?(3) Finish后,可以看到創(chuàng)建成功了,直接運(yùn)行一下,如果出現(xiàn)這個(gè) JVM運(yùn)行時(shí)間就說明創(chuàng)建成功了

springboot 寫文件,JavaEE,spring boot,java,spring

springboot 寫文件,JavaEE,spring boot,java,spring?(4) 刪除掉無用的目錄?

springboot 寫文件,JavaEE,spring boot,java,spring

springboot 寫文件,JavaEE,spring boot,java,spring

2. 寫一個(gè) Hello World 并運(yùn)行

(1) 創(chuàng)建一個(gè)類,注意和 Application 平級,寫一個(gè)方法,返回 Hello World

  1. ?????先加一個(gè) @Controller,? ? 也就是運(yùn)行項(xiàng)目后,會(huì)先找到這個(gè)類
  2. 然后再加 @RequestMapping,? ?這個(gè)的作用就是前面找到 @Controller后,有了這個(gè)@RequestMapping就會(huì)鎖定我寫的方法 sayHi()? ?,注意里面字母都小寫
  3. 加@ResponseBody的作用是,我想返回給頁面一個(gè)非靜態(tài)的數(shù)據(jù)(也就是給響應(yīng)Body中放一個(gè)字符串)

springboot 寫文件,JavaEE,spring boot,java,spring

?然后直接運(yùn)行,頁面輸入 127.0.0.1:8080/sayhi 可以看到訪問成功了

springboot 寫文件,JavaEE,spring boot,java,spring


3. 配置文件的作用及格式

(1) 在整個(gè)項(xiàng)目中所有重要的數(shù)據(jù)都是在配置文件中配置的, 比如:

  • 項(xiàng)目的啟動(dòng)端口
  • 數(shù)據(jù)庫的連接信息 (包含用戶名和密碼的設(shè)置)
  • 第三方系統(tǒng)的調(diào)用秘鑰等信息
  • 用于發(fā)現(xiàn)和定位問題的普通日志和異常日志等

在 Spring Boot 項(xiàng)目中如果沒有配置信息,就不能連接和操作數(shù)據(jù)庫, 甚至是不能保存可以用于排查問題的關(guān)鍵日志, 所以配置文件的作用是非常重要的

(2) 配置文件的分類:

  • 系統(tǒng)的配置文件, 比如: 連接字符串, 日志的相關(guān)設(shè)置
  • 用戶自定義的

(3) 配置文件的格式

  • ?. properties
  • ?. yml

一個(gè)項(xiàng)目中可以存在兩種配置文件 (properties 和 yml) , 但是不建議這樣搞

當(dāng)一個(gè)項(xiàng)目的某個(gè)配置, 出現(xiàn)在兩種格式的配置文件中時(shí), 那么配置項(xiàng)會(huì)以 properties 為主

springboot 寫文件,JavaEE,spring boot,java,spring

springboot 寫文件,JavaEE,spring boot,java,spring

?如果此時(shí)修改了配置文件的名字, 重新運(yùn)行程序, 就訪問不到了

springboot 寫文件,JavaEE,spring boot,java,spring

springboot 寫文件,JavaEE,spring boot,java,spring


4. properties 配置文件的基本語法?

?properties 是以鍵值的形式配置的, key=value? 中間是以 "=" 連接的?

springboot 寫文件,JavaEE,spring boot,java,spring

關(guān)于 properties 中文亂碼的問題處理

因?yàn)?properties 是早期的配置文件, 不支持中文, 所以比如當(dāng)重啟 idea 后, 中文就會(huì)亂碼

可以設(shè)置一下

(1) 配置當(dāng)前項(xiàng)目中文亂碼的問題

springboot 寫文件,JavaEE,spring boot,java,spring

?(2)?配置新項(xiàng)目中文亂碼的問題

springboot 寫文件,JavaEE,spring boot,java,spring

springboot 寫文件,JavaEE,spring boot,java,spring


5. 讀取配置文件

如果在項(xiàng)目中, 想要主動(dòng)讀取配置文件中的內(nèi)容, 可以使用 @Value 注解來實(shí)現(xiàn)

@Value 注解使用 "${}" 的格式讀取

springboot 寫文件,JavaEE,spring boot,java,spring

?springboot 寫文件,JavaEE,spring boot,java,spring

?可以看到如果要讀取多個(gè)配置文件中的信息, properties 配置文件中會(huì)有很多的容易信息, 比如

?springboot 寫文件,JavaEE,spring boot,java,spring

?要想解決這個(gè)問題, 就可以使用 yml 配置文件的格式化了


6. yml 配置文件說明

yml 意思是"另一種標(biāo)記語言", yml 是一個(gè)可讀性高, 易于理解,用來表達(dá)數(shù)據(jù)序列化的格式. 特別適合用來表達(dá)或編輯數(shù)據(jù)結(jié)構(gòu), 各種配置文件等. yml 最大優(yōu)勢是可以跨語言, 比如 golang java python 都可以使用 yml 作為配置文件

(1) yml 基本語法

yml 是樹形結(jié)構(gòu)的配置文件, 基礎(chǔ)語法是 "key: value",? 注意 中間使用冒號和空格連接的,空格不要省略

springboot 寫文件,JavaEE,spring boot,java,spring

(2) yml 配置不同的數(shù)據(jù)類型

# 字符串
string.value: hello

# 布爾值
boolean.value: true

# 整數(shù)
int.value: 10

# 浮點(diǎn)數(shù)
float.value: 3.14159

# Null, ~ 表示 null
null.value: ~

(3) yml 單雙引號的問題

springboot 寫文件,JavaEE,spring boot,java,spring

(4) 配置對象

在 yml 中配置對象, 這個(gè)時(shí)候需要使用注解 @ConfigurationProperties 來讀取

springboot 寫文件,JavaEE,spring boot,java,spring

?springboot 寫文件,JavaEE,spring boot,java,spring

(5)配置集合

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

springboot 寫文件,JavaEE,spring boot,java,spring


7. properties 和 yml 的區(qū)別

  • properties 是以 key=value 的形式配置的鍵值類型的配置文件, 而 yml 使用的是類似于 json 格式的配置方式, key: value 中間用冒號和空格連接
  • properties 是早期并且也是默認(rèn)的配置文件格式, 這種方式存在一定的冗余數(shù)據(jù), yml 可以很好的解決這種冗余問題
  • yml 通用性更好,支持更多語言, 并且支持更多的數(shù)據(jù)類型

8. SpringBoot 日志文件

8.1 日志的作用

日志是程序的重要組成部分,當(dāng)程序報(bào)錯(cuò)是就可以通過,日志來發(fā)現(xiàn)和定位問題,并且日志的作用還有

  • 記錄用戶登錄日志,方便分析用戶是正常登錄還是惡意破解用戶
  • 記錄系統(tǒng)的操作日志, 方便數(shù)據(jù)恢復(fù)和定位操作人
  • 記錄程序的執(zhí)行時(shí)間, 方便為以后優(yōu)化程序提供數(shù)據(jù)支持

Spring Boot 項(xiàng)目在啟動(dòng)的時(shí)候就有默認(rèn)的日志輸出

如果這個(gè)默認(rèn)的日志輸出,就可以發(fā)現(xiàn)問題

  • Spring Boot 內(nèi)置了日志框架
  • 默認(rèn)情況下, 輸出的日志并非是開發(fā)者定義和打印的, 那么開發(fā)者如何在程序中自定義打印日志
  • 日志默認(rèn)是打印在控制臺(tái)上的, 但這樣是不能被保存的, 那么怎樣把日志持久化保存下來

8.2 自定義日志打印

自定義打印日志的實(shí)現(xiàn)步驟:

  1. 在程序中得到日志對象
  2. 使用日志對象的相關(guān)語法輸出要打印的內(nèi)容

springboot 寫文件,JavaEE,spring boot,java,spring

springboot 寫文件,JavaEE,spring boot,java,spring

?可以看到這里日志打印只出現(xiàn)了三個(gè), 這是因?yàn)槟J(rèn)的日志級別是 info 的, 這里只會(huì)輸出級別大于等于 info 的

springboot 寫文件,JavaEE,spring boot,java,spring

package com.example.demo;

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;

/**
 * @Description:
 * @Date 2022/12/27 14:04
 */
@Controller
@ResponseBody
public class UserController2 {

    // 1.先得到日志對象 (設(shè)置當(dāng)前類的類型)
    private final static Logger log = LoggerFactory.getLogger(UserController2.class);

    @RequestMapping("/sayhii")
    public void sayHii() {
        // 2.使用日志對象提供的方法進(jìn)行打印
        log.trace("trace 最小");
        log.debug("debug 調(diào)試");
        log.info("info 普通");
        log.warn("warn 警告");
        log.error("error 錯(cuò)誤");
    }
}

8.3 日志的級別

日志級別可以幫助篩選出重要的信息

  1. trace: 微量, 少許, 級別最低
  2. debug: 調(diào)試日志
  3. info: 普通信息日志
  4. warn: 警告日志
  5. error: 錯(cuò)誤日志
  6. fatal: 致命的日志, 系統(tǒng)輸出的, 不能自定義打印

當(dāng)存在局部日志級別和全局日志級別設(shè)置時(shí), 那么當(dāng)訪問局部日志時(shí), 使用的是局部日志級別,?

局部日志級別優(yōu)先級 > 全局的日志級別?

# 設(shè)置全局的日志級別 (properties)
logging.level.root=info
# 設(shè)置局部文件夾的日志級別
logging.level.com.example.demo.controller=trace
# 全局日志級別的配置  yml
logging:
  level: 
    root: error

8.4 日志持久化

日志持久化: 將日志永久的保存到磁盤的某個(gè)位置, 有兩種方式

  1. 在配置文件中設(shè)置日志的保存路徑, 當(dāng)設(shè)置了保存路徑之后, 那么日志就會(huì)自動(dòng)的進(jìn)行持久化
  2. 在配置文件中設(shè)置日志保存的名稱, 日志會(huì)自動(dòng)進(jìn)行持久化

(1) 設(shè)置日志的保存路徑

# 設(shè)置日志的保存目錄 (properties)
logging.file.path=D:/IDEA/

# 如果想使用 \ 就要注意轉(zhuǎn)義的問題,這里用\\
logging.file.path=D:\\IDEA\\
# 設(shè)置日志保存的目錄  (yml)
logging:
  file:
    path: D:/IDEA/

可以看到日志保存到了這個(gè)目錄下的位置?

springboot 寫文件,JavaEE,spring boot,java,spring

?(2) 設(shè)置日志的保存名稱

# 設(shè)置日志的保存名稱 (properties)
logging.file.name=D:/IDEA/spring-boot.log

8.5 更簡單的實(shí)現(xiàn)日志打印lombok

添加 lombok 到當(dāng)前項(xiàng)目

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

(1) 使用 @Slf4j 得到日志對象 log

(2) 使用 log 對象自定義打印日志文章來源地址http://www.zghlxwxcb.cn/news/detail-816277.html

package com.example.demo.service;

import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;

//@RestController = @Controller + @ResponseBody
@RestController
@Slf4j   // 代替了之前需要通過 LoggerFactory.getLogger 操作
public class UserService {

    @RequestMapping("/sayhi2")
    public void sayHi2() {
        log.trace("trace");
        log.debug("debug");
        log.info("info");
        log.warn("warn");
        log.error("error");
    }
}

到了這里,關(guān)于SpringBoot(項(xiàng)目創(chuàng)建使用+配置文件+日志文件)的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 芋道SpringBoot配置Maven、創(chuàng)建SpringBoot項(xiàng)目、創(chuàng)建Web接口、讀取配置信息

    芋道SpringBoot配置Maven、創(chuàng)建SpringBoot項(xiàng)目、創(chuàng)建Web接口、讀取配置信息

    ??作者主頁:青花鎖 ??簡介:Java領(lǐng)域優(yōu)質(zhì)創(chuàng)作者??、Java微服務(wù)架構(gòu)公號作者?? ??簡歷模板、學(xué)習(xí)資料、面試題庫、技術(shù)互助 ??文末獲取聯(lián)系方式 ?? 第一章 芋道 Spring Boot 快速入門 芋道 SpringBoot是一款國產(chǎn)的SpringCloud微服務(wù)框架,包括Outh2.0、微服務(wù)網(wǎng)關(guān)、微服務(wù)注冊中

    2024年04月23日
    瀏覽(20)
  • SpringBoot項(xiàng)目從0到1配置logback日志打印

    SpringBoot項(xiàng)目從0到1配置logback日志打印

    大家好!我是sum墨,一個(gè)一線的底層碼農(nóng),平時(shí)喜歡研究和思考一些技術(shù)相關(guān)的問題并整理成文,限于本人水平,如果文章和代碼有表述不當(dāng)之處,還請不吝賜教。 以下是正文! 我們在寫后端項(xiàng)目的時(shí)候,日志打印是必需的。支持SpringBoot項(xiàng)目的日志框架一般有l(wèi)og4j、logback,

    2024年02月11日
    瀏覽(34)
  • 【Spring框架全系列】SpringBoot配置日志文件

    【Spring框架全系列】SpringBoot配置日志文件

    ????哈嘍,大家好,我是小浪。那么上篇博客我們學(xué)習(xí)了SpringBoot配置文件的相關(guān)操作,本篇博客我們將學(xué)習(xí)一個(gè)新的知識(shí)點(diǎn),SpringBoot日志文件。???? ??目錄 一、日志是什么,有什么作用? 二、如何看到日志文件? 三、如何自定義日志打印 1、在程序中得到?志對象 2、使

    2024年02月03日
    瀏覽(18)
  • Docker創(chuàng)建Springboot項(xiàng)目鏡像文件

    Docker創(chuàng)建Springboot項(xiàng)目鏡像文件

    本文章展示的是以Windows10系統(tǒng)為例進(jìn)行操作 安裝地址:desktop安裝地址(外網(wǎng),需要一些手段進(jìn)行訪問) 官網(wǎng)地址點(diǎn)擊送達(dá)(外網(wǎng)) 4.1.首先進(jìn)行maven 打包,將會(huì)在target中生成一個(gè)Jar包. 嘗試在target目錄下進(jìn)入cmd,使用命令 4.2.在target目錄下創(chuàng)建文件Dockerfile 在Dockerfile中寫入信息如下 4.3

    2024年02月14日
    瀏覽(45)
  • SpringBoot3中的屬性綁定注解和YMAL配置文件、日志

    SpringBoot摒棄XML配置方式,改為 全注解驅(qū)動(dòng) 1. 組件注冊 @Configuration 、 @SpringBootConfiguration @Bean 、 @Scope @Controller 、 @Service 、 @Repository 、 @Component @Import @ComponentScan 步驟: 1、@Configuration 編寫一個(gè)配置類 2、在配置類中,自定義方法給容器中注冊組件。配合@Bean 3、或使用@Import

    2024年02月11日
    瀏覽(19)
  • SpringBoot(一)使用itelliJ社區(qū)版創(chuàng)建SpringBoot項(xiàng)目

    SpringBoot(一)使用itelliJ社區(qū)版創(chuàng)建SpringBoot項(xiàng)目

    ? ? 工欲善其事,必先利其器。要開發(fā)SpringBoot項(xiàng)目,首先就是選擇一款合適的開發(fā)工具。目前市面上有很多優(yōu)秀的開發(fā)工具,例如 IntelliJ IDEA、Visual Studio Code 和 Eclipse 等,那么我們該如何選擇呢?最好的選擇是使用IntelliJ IDEA的Ultimate版本,但Ultimate版本試用期只有30天,30天后

    2024年02月14日
    瀏覽(20)
  • SpringBoot項(xiàng)目的創(chuàng)建和使用

    SpringBoot項(xiàng)目的創(chuàng)建和使用

    目錄 一,SpringBoot 1,什么是SpringBoot 2,SpringBoot的優(yōu)點(diǎn) 二,SpringBoot項(xiàng)目的創(chuàng)建和使用 1,項(xiàng)目的創(chuàng)建 創(chuàng)建方式 使用Idea創(chuàng)建(統(tǒng)一使用Idea社區(qū)版2021.x版本) ?使用網(wǎng)頁版創(chuàng)建(使用Spring官網(wǎng)) ?2,SpringBoot目錄說明 1,目錄說明 ?2,刪除4個(gè)無用文件 ?3,SpringBoot項(xiàng)目的簡單使用

    2023年04月25日
    瀏覽(19)
  • 使用maven創(chuàng)建springboot項(xiàng)目

    使用maven創(chuàng)建springboot項(xiàng)目

    命令行或者idea、eclipse快捷創(chuàng)建也可以 訪問loalhost:8080,因?yàn)闆]有其他接口所以報(bào)錯(cuò) 新建HelloController.java 重新啟動(dòng)項(xiàng)目訪問

    2024年02月10日
    瀏覽(23)
  • springboot日志使用 SLF4J+Logback 實(shí)現(xiàn)(springboot默認(rèn)的日志實(shí)現(xiàn)),日志打印到控制臺(tái)及日志輸出到指定文件

    還是直接上代碼 @Slf4j 這玩意 默認(rèn)支持 不用引入 yml 配置文件 下面分享 xml 方式 在 資源目錄下創(chuàng)建 logback-spring.xml 粘貼走 即可 重啟 看控制臺(tái)變化 還有磁盤 有沒有寫入 坑 : 我在創(chuàng)建的時(shí)候 發(fā)現(xiàn) xml 沒有生效 排查了半天 發(fā)現(xiàn) 在創(chuàng)建 logback-spring.xml 這個(gè)文件的時(shí)候 我不是手

    2024年04月22日
    瀏覽(99)
  • 23、springboot日志使用入門-- SLF4J+Logback 實(shí)現(xiàn)(springboot默認(rèn)的日志實(shí)現(xiàn)),日志打印到控制臺(tái)及日志輸出到指定文件

    23、springboot日志使用入門-- SLF4J+Logback 實(shí)現(xiàn)(springboot默認(rèn)的日志實(shí)現(xiàn)),日志打印到控制臺(tái)及日志輸出到指定文件

    就是springboot的默認(rèn)的日志依賴實(shí)現(xiàn)。創(chuàng)建項(xiàng)目的時(shí)候存在這個(gè)依賴?yán)锩妗?下面的日志實(shí)現(xiàn)就是基于 SLF4J+Logback SLF4J+Logback:SLF4J是門面,Logback是實(shí)現(xiàn) 設(shè)置日志的級別,可通過以下方式: ▲ 改變Spring Boot的核心日志級別 ▲ 改變程序組件(包括所有各種框架)的核心日志級別

    2024年02月03日
    瀏覽(98)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包