日志:logback、枚举

 

logback下载步骤:

logback官网https://logback.qos.ch/index.html教程http://t.csdn.cn/xSK0I

 

点击SLF4J API进去,注意看右上角的标题是有变化的,是什么目录下就会显示什么目录,点击下载

 然后一样点击右下角的Maven

 下载这三个,按照教程来,不下载最新版本,他有两次进入方式,以logback-core为例,当点击Maven进入之后,找到logback-core.jar包点击进去然后选择1.2.3版本就可以,其他都一样

 

然后点击目录点击主页

 

 然后点击左下角的Maven,一样的下载方式

导入:

1.在模块下创建文件夹Directory,命名为lib

2.将三个jar包复制粘贴进来

3.全选三个jar包右键点击add as Library

4.如果jar包可以展开,证明导入成功

5.也可以点击File→Project Structure→Libraries

 

创建配置文件:

新建txt文件,将下面代码复制进去

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
    <!-- CONSOLE :表示当前的日志信息是可以输出到控制台的 -->
    <appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender">
        <!--输出流对象 默认 System.out 改为 System.err  其中err:控制台输出日志为红色,而out为黑色-->
        <target>System.out</target>
        <encoder>
            <!--格式化输出:%d表示日期,%thread表示线程名,%-5level:级别从左显示5个字符宽度 %msg:日志消息,%n是换行符-->
            <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%-5level]  %c [%thread] : %msg%n</pattern>
        </encoder>
    </appender>

    <!-- File:表示当前的日志信息是可以输出到文件的 -->
    <appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
        <encoder>
            <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</pattern>
            <charset>utf-8</charset><!-- idea输出的都是utf-8格式,改其他格式会容易乱码 -->
        </encoder>
        <!--日志输出路径(logback_message.log是文档名,下方还有一处文件名(不用写.log))-->
        <file>此处输入存储路径!!!\logback_message.log</file>
        <!--指定日志文件拆分和压缩规则(防止文件过大)-->
        <rollingPolicy
                class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
            <!--通过指定压缩文件名称,来确定分割文件方式-->
            <fileNamePattern>此处输入存储路径!!!\logback_message-%d{yyyy-MMdd}.log%i.gz</fileNamePattern>
            <maxFileSize>1MB</maxFileSize> <!--文件拆分大小-->
        </rollingPolicy>
    </appender>

    <!--
    level:用来设置打印级别,大小写无关:TRACE, DEBUG, INFO, WARN, ERROR, ALL 和 OFF (关掉), 默认debug(可忽略大小写)
    <root>可以包含零个或多个<appender-ref>元素,标识这个输出位置将会被本日志级别控制。
    -->
    <root level="INFO"> <!--打印规则:只打印不低于当前级别的日志-->
        <appender-ref ref="CONSOLE"/> <!--如果这个地方不配置关联打印的位置,改位置将不会记录日志-->
        <appender-ref ref="FILE" /> <!--如果这个地方删除了,只会存储文件,但文件里是没有记录信息的-->
    </root>
</configuration>

然后将文件名改为 logback.xml,然后粘贴到src里,注意!只能粘贴到src里

导入后将两处日志输出路径修改一下,如果没有此路径将出现一堆英文

 

 

枚举:

作用:为了间接的表示固定的值

 

1. 表示Enum类里的方法所有枚举都能使用

2. 类名.枚举型名称可以访问指定枚举(应用场景?)

3.Season spring =  Season.Spring;(重点)

6.创建完有参和无参构造之后,若无参构造被注释掉,此时和特点3,相冲突了,因为类名.枚举型名称,访问的就是无参构造(不管你写不写构造,所有类默认都会自带无参构造),此时可以将枚举改成带参构造

疑问?

此处this.name访问私有变量就会编译报错,是什么原因?重写就有继承关系?要用反编译去解释?

 

方法的应用

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值