zoukankan      html  css  js  c++  java
  • SpringBoot配置lombok,与logback

    目录:

    一 什么是lombok

    二 lombok安装

    三 使用lombok

    四 使用logback

    一 什么是lombok

      在写Java程序的时候经常会遇到如下情形:新建了一个Class类,然后在其中设置了几个字段,最后还需要花费很多时间来建立getter,setter方法还有构造函数等 。
      lombok项目的产生就是为了省去我们手动创建getter和setter方法的麻烦,它能够在我们编译源码的时候自动帮我们生成getter和setter方法。
      即它最终能够达到的效果是:在源码中没有getter和setter方法,但是在编译生成的字节码文件中有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模式创建对象

    四 使用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}) -&#45;&#45; %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}) -&#45;&#45; %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>
  • 相关阅读:
    Daily Scrumming* 2015.12.19(Day 11)
    Daily Scrumming* 2015.12.18(Day 10)
    软件工程 个人作业1
    网络1711-12&信管1711-12 图 作业评分
    网络1711-12 数据结构第一次作业评分
    Java课程设计
    网络1711-1712班 c 语言评分总表一览
    网络1711班 C语言第八次作业批改总结
    201621123050 《Java程序设计》第14周学习总结
    201621123050 《Java程序设计》第13周学习总结
  • 原文地址:https://www.cnblogs.com/zhanzhuang/p/12100537.html
Copyright © 2011-2022 走看看