SpringBoot配置lombok與logback過程解析
一 什么是lombok
在寫Java程序的時候經(jīng)常會遇到如下情形:新建了一個Class類,然后在其中設置了幾個字段,最后還需要花費很多時間來建立getter,setter方法還有構造函數(shù)等 。
lombok項目的產(chǎn)生就是為了省去我們手動創(chuàng)建getter和setter方法的麻煩,它能夠在我們編譯源碼的時候自動幫我們生成getter和setter方法?! ?/p>
即它最終能夠達到的效果是:在源碼中沒有getter和setter方法,但是在編譯生成的字節(jié)碼文件中有getter和setter方法。
二 lombok安裝
在項目中導入依賴
<dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <version>1.18.10</version> <scope>provided</scope> </dependency>
在idea中安裝lombok插件
file->settings->plugins->搜索lombok
三 使用lombok
lombok常用注解
@Data
作用在類上,提供類所有屬性的get set方法,此外還提供了hashcode equals tostring canequal方法
@Slf4j
注解在類上,為類提供一個屬性名為log的slf4j日志對象
@NoArgsConstructor
注解在類上,為類提供一個無參構造器
@AllArgsConstructor
注解在類上,為類提供一個全參構造器
@Builder
注解在類上,使用Builder模式創(chuàng)建對象
四 使用logback
默認情況下,SpringBoot 采用logback來記錄日志,并輸出 INFO 級別日志到控制臺
spring-boot-stater的依賴中包含了logback,無需導包
application.yml
logging: file: application.log
logback-spring.xml 使用這個文件名放到resource下面無需其他配置,springboot會自動找到這個日志配置
<configuration> <appender name="ROLLING" class="ch.qos.logback.core.rolling.RollingFileAppender"> <file>logs/application.log</file> <rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy"> <!-- rollover daily --> <fileNamePattern>logs/backup/application.%d{yyyy-MM-dd}.%i.log.zip</fileNamePattern> <maxFileSize>100MB</maxFileSize> <maxHistory>60</maxHistory> <totalSizeCap>50GB</totalSizeCap> </rollingPolicy> <encoder> <!--<pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} %magenta([%12.12thread]) %highlight(%-5level{5}) --- %24.24logger.%12.12M\(\) : %msg%n--> <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%12.12thread] %-5level{5} --- %24.24logger.%12.12M\(\) : %msg%n </pattern> </encoder> </appender> <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender"> <encoder> <!--<pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} %magenta([%12.12thread]) %highlight(%-5level{5}) --- %24.24logger.%12.12M\(\) : %msg%n--> <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%12.12thread] %-5level{5} --- %24.24logger.%12.12M\(\) : %msg%n </pattern> </encoder> </appender> <root level="INFO"> <appender-ref ref="STDOUT"/> <appender-ref ref="ROLLING"/> </root> </configuration>
以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
相關文章
Java中StringUtils與CollectionUtils和ObjectUtil概念講解
這篇文章主要介紹了Java中StringUtils與CollectionUtils和ObjectUtil概念,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習吧2022-12-12Mabatis錯誤提示Parameter index out of range的處理方法
這篇文章主要介紹了Mabatis錯誤提示Parameter index out of range 的處理方法,本文給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下2018-08-08詳解Java多線程編程中互斥鎖ReentrantLock類的用法
Java多線程并發(fā)的程序中使用互斥鎖有synchronized和ReentrantLock兩種方式,這里我們來詳解Java多線程編程中互斥鎖ReentrantLock類的用法:2016-07-07Servlet的兩種創(chuàng)建方式(xml?注解)示例詳解
這篇文章主要為大家介紹了Servlet的兩種創(chuàng)建方式(xml?注解)示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2023-08-08