当前位置: 首页 > wzjs >正文

网站制作源码微信crm系统软件

网站制作源码,微信crm系统软件,网站做哪些比较赚钱,自己制作游戏日志的使用 先引入日志对象,注意是 引入的是 org.slf4j 这个包下的 Logger 在传参上:可以传入类名,或者一个字符串,该参数表示日志名称 例如如果传入 “aaaa”,那么日志的名称就是 aaaa RequestMapping("/log&…

日志的使用

先引入日志对象,注意是 引入的是 org.slf4j 这个包下的 Logger

在这里插入图片描述


在传参上:可以传入类名,或者一个字符串,该参数表示日志名称

例如如果传入 “aaaa”,那么日志的名称就是 aaaa

@RequestMapping("/log")
@RestController
public class LogController {private final static Logger logger = LoggerFactory.getLogger("aaaa");@RequestMapping("/print")public void print() {logger.debug("logger debug");logger.info("logger info");logger.error("logger error");logger.trace("logger trace");logger.warn("logger warn");}
}

在这里插入图片描述

如果传入类名,日志的名称为全限定名(包名 + 类名)

package org.example.springcaptcha.log.controller;@RequestMapping("/log")
@RestController
public class LogController {private final static Logger logger = LoggerFactory.getLogger(LogController.class);@RequestMapping("/print")public void print() {logger.debug("logger debug");logger.info("logger info");logger.error("logger error");logger.trace("logger trace");logger.warn("logger warn");}
}

在这里插入图片描述

日志的等级

在运行上述代码后并访问之后,我们获得如下的访问内容:

在这里插入图片描述

你会发现这个日志只打印了三条,因为日志默认打印的起始等级为 info

日志的级别从高到低依次为: FATAL、ERROR、WARN、INFO、DEBUG、TRACE
• FATAL: 致命信息,表示需要立即被处理的系统级错误.
• ERROR: 错误信息, 级别较高的错误日志信息, 但仍然不影响系统的继续运行.
• WARN: 警告信息, 不影响使用, 但需要注意的问题
• INFO: 普通信息,用于记录应用程序正常运行时的⼀些信息, 例如系统启动完成、请求处理完成等.
• DEBUG: 调试信息, 需要调试时候的关键信息打印.
• TRACE: 追踪信息, 比DEBUG更细粒度的信息事件(除非有特殊用意,否则请使用DEBUG级别替代)

在这里插入图片描述

FATAL 在这里没有方法提供给我们使用
默认的的打印等级最低为 info


如何设置默认的打印等级:
使用配置文件来进行修改:

示例: yml 格式

logging:level:root: debug

properties 格式:

logging.level.root=debug

在这里插入图片描述

SLF4J 框架介绍

SLF4J 是其他日志框架的门面,SLF4J 可以理解为是提供日志服务的统一 API 接口,并不涉及到具体日志逻辑实现

在这里插入图片描述

不引入日志门面的话存在哪些问题:
1.不同的日志框架提供的 API 接口和配置文件不同,如果多个日志框架并存,那么不得不维护多套配置文件(该配置文件指用户自定义的配置文件)
2. 如果要更换日志框架,应用程序不得不修改代码,并且修改过程中可能会存在一些代码冲突
3. 如果引入的第三方框架,使用了多套,那就不得不维护多套配置

引入日志门面之后
应用程序和日志框架之间有了统一的API 接口,此时应用程序只需要维护一套日志文件的配置,且当底层实现框架改变的时候,也不需要更改应用程序的代码

门面模式(外观模式)

门面模式又被称为外观模式,提供了统一的接口,用来访问子系统
其主要的特征为定义了一个高层接口,让子系统更容易使用

门面模式的优点:
减少了系统的相互依赖,实现了客户端与子系统的耦合关系,这使得子系统的变化不会影响到它调用的客户端
提高了灵活性,简化了客户端对子系统的使用难度,客户端无需关心子系统的具体实现方式,而只需要与门面对象交互即可
提高了安全性,可以灵活设定访问权限,不在门面对象中开通方法,就无法访问

示例:通过门面统一控制灯的开与关

子系统实现:

public interface Light {void on();void off();
}public class BedRoomLight implements Light {@Overridepublic void on() {System.out.println("卧室灯亮");}@Overridepublic void off() {System.out.println("卧室灯灭");}
}public class HallLight implements Light {@Overridepublic void on() {System.out.println("走廊灯亮");}@Overridepublic void off() {System.out.println("走廊灯灭");}
}public class LivingRoomLight implements Light {@Overridepublic void on() {System.out.println("客厅灯亮");}@Overridepublic void off() {System.out.println("客厅灯灭");}
}

门面实现:

public class FacadeCilent {BedRoomLight bedRoomLight = new BedRoomLight();HallLight hallLight = new HallLight();LivingRoomLight livingRoomLight = new LivingRoomLight();public void on() {bedRoomLight.on();hallLight.on();livingRoomLight.on();}public void off() {bedRoomLight.off();hallLight.off();livingRoomLight.off();}
}

测试类:

public class Test {public static void main(String[] args) {FacadeCilent facadeCilent = new FacadeCilent();facadeCilent.off();facadeCilent.on();}
}

日志格式说明

在这里插入图片描述
在这里插入图片描述

日志的持久化保存

我们依旧要使用配置文件来定义日志保存的路径或者文件夹,以及日志的分割等信息

配置日志的保存的文件夹:
yml:

logging:file:name: logger/springboot.log

properties:

logging.file.name=logger/springboot.log

创建好 logger 文件夹之后并且将文件 springboot.log 也创建出来了:
在这里插入图片描述


配置日志保存的路径:
yml:

logging:file:path: D:/code

properties:

logging.file.path=D:/code

会在指定的路径下生成 spring.log 文件

在这里插入图片描述

当logging.file.name 和 logging.file.path 两个配置都存在的情况下,只能生效其中一个,以 logging.file.name 为准


日志的分割:
我们可以通过配置文件来定义多大空间的日志就进行一次分割

logging:logback:rollingpolicy:max-file-size: 1KBfile-name-pattern: ${LOG_FILE}.%d{yyyy-MM-dd}.%i

max-file-size 设置日志文件的最大值
file-name-pattern 设置日志文件的文件名称格式

在这里插入图片描述

日志的简单使用

使用 lombok 下 的 注解:@Slf4j

我们可以直接使用变量 log 来进行日志的打印:

@RequestMapping("/log2")
@RestController
@Slf4j
public class LogController2 {@RequestMapping("/print")public void print() {log.debug("logger debug");log.info("logger info");log.error("logger error");log.trace("logger trace");log.warn("logger warn");}
}

我们可以在 target 文件夹下观察到 @Slf4j 直接消失,多出来一个 Logger 对象,并且对象名为 log
因此我们可以直接使用 log 来进行日志的打印

在这里插入图片描述

http://www.dtcms.com/wzjs/448730.html

相关文章:

  • 电商网站设计页面设计销售外包
  • 17zwd一起做业网站企业网站推广方法实验报告
  • 什么是电子商务网站建设的基本要求网站模板平台资源
  • 可以做多边形背景的网站百度关键词排名点
  • 工作计划及目标郑州seo排名第一
  • 在网站设计中 网页框架设计哪里可以引流到精准客户呢
  • 用表格做网站教程推广点击器
  • 男女做爰网站19淘宝搜索关键词排名查询工具
  • 公司网站域名到期济南seo优化外包
  • 团购网站经营模式优化手机性能的软件
  • 幼儿园校园网站建设情况今日国内新闻重大事件
  • 秦皇岛做网站的公司城市更新论坛破圈
  • 婚恋网站系统短视频运营培训学费多少
  • 唐山做网站公司费用客服系统网页源码2022免费
  • 建设网站公司兴田德润i优惠吗百度网络科技有限公司
  • makah5页面制作网站广州今日刚刚发生的新闻
  • 战地之王网站做任务软文内容
  • 合肥网站建设哪家公司好免费写文案神器
  • 做p2p网站卖赚钱吗中国电信视频app下载
  • 网站双语怎么做百度关键词批量看排名工具
  • 厦门建站网址费用创建网站的基本步骤
  • 可以做外链网站网站模板商城
  • 武邑县网站建设西安seo黑
  • 地产广告设计网站郑州网络营销推广公司
  • web服务器管理的主要技术武汉seo学徒
  • 中纪委网站 两学一做宣传推广方式
  • 南宁做网站比较好的公司什么是百度竞价排名
  • 卫浴洁具公司网站模板客户管理软件crm排名
  • 网站源码大全最新网站推广计划书
  • wordpress无法连接数据库湛江seo