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

网站建设頰算做网站需要写代码

网站建设頰算,做网站需要写代码,句容工程建设招标网站,wordpress 无法将上传的文件移动至目录 1.如何使用日志 2.自定义打印日志 3.日志级别 3.1 日志从低到高级别 3.2 日志级别设置 为什么 Spring Boot 可以打印日志?并设置日志级别? 4.日志的持久化 5.lombok——更加简单的输出日志 5.1 使用slf4j 注解输出日志 5.2 lombok 执行原…

目录

1.如何使用日志

2.自定义打印日志

3.日志级别

3.1 日志从低到高级别

3.2 日志级别设置

为什么 Spring Boot 可以打印日志?并设置日志级别?

4.日志的持久化

5.lombok——更加简单的输出日志

5.1 使用@slf4j 注解输出日志

5.2 lombok 执行原理


日志是程序的重要部分,想象⼀下,如果程序报错了,不让你打开控制台看日志,那么你能找到报错的原因吗?

日志的功能:

  • 记录用户登录日志,⽅便分析⽤户是正常登录还是恶意破解⽤户
  • 记录系统的操作日志,⽅便数据恢复和定位操作人
  • 记录程序的执行时间,⽅便为以后优化程序提供数据⽀持等等

1.如何使用日志

spring boot 默认打印日志:

2.自定义打印日志

  1. 通过日志工厂得到日志对象
  2. 通过日志对象提供打印方法实现打印

1️⃣在程序中得到日志对象

在程序中获取日志对象需要使用日志工厂 LoggerFactory注意:Logger 对象是属于 org.slf4j 包下的,不要导⼊错包)

//得到日志对象
private static Logger logger = LoggerFactory.getLogger(UserController.class);

面试问题:spring或者项目中有没有使用到设计模式?即像如 LoggerFactory 是一个工厂模式;BeanFactory也是工厂模式

2️⃣使用日志对象打印日志

//2.使用日志对象提供 API 打印日志
String msg = "学习 springboot";
log.trace("trace -> " + msg);
log.info("info -> " + msg);
log.debug("debug -> " + msg);
log.warn("warn -> " + msg);
log.error("error -> " + msg);

3.日志级别

  • 日志的作用

筛选重要信息比如设置日志级别为 error,那么就可以只看程序的报错日志了,对于普通的调试日志和业务日志就可以忽略了,从而节省开发者信息筛选的时间

3.1 日志从低到高级别

  • trace:微量、少许、痕迹,日志级别最低
  • debug:调试日志级别(需要调试时候的关键信息打印
  • info:普通(默认)日志级别(普通的打印信息
  • warn:警告日志级别(不影响使⽤,但需要注意的问题
  • error:错误日志级别
  • fatal:致命的日志级别(因为代码异常导致程序退出执行的事件,级别最高

3.2 日志级别设置

日志级别配置只需要在配置文件中设置“logging.level”配置项即可:

logging.level.root=warn

此时只可以看到大于等于 warn 日志级别的日志

从这里可以看出:日志级别的作用——过滤信息,将业务不需要的日志屏蔽掉


为什么 Spring Boot 可以打印日志?并设置日志级别?

因为 Spring Boot 内置了两个日志框架:SLF4J + LogBack

LogBack:最底层实现日志相关操作的框架

SLF4J:让开发者使用和调用的框架

给文件夹单独设置日志级别:

# 当前项目默认的日志级别
logging.level.root=warn
# 给 Controller 文件夹单独设置日志级别
logging.level.com.example.demo.controller=debug

4.日志的持久化

简化:将日志保存到磁盘

  • 设置日志保存路径
#设置日志保存路径
logging.file.path=E:\\springboot_log\\
  • 设置日志保存文件名
#设置日志的保存文件名
logging.file.name=E:\\springboot_log\\springboot.log

5.lombok——更加简单的输出日志

之前使用 LoggerFactory.getLogger(xxx.class) 比较繁琐

private static Logger log = LoggerFactory.getLogger(LogController.class);

接下来说说更加简单的输出日志

  1. 添加 lombok 框架⽀持
  2. 使用 @slf4j 注解输出日志

1️⃣idea 安装 lombok 插件

2️⃣在项目中添加 lombok 依赖

3️⃣使用 lombok 的方式编写代码

import lombok.Getter;
import lombok.Setter;
import lombok.ToString;@Getter
@Setter //相当于调用 get 和 set 方法
@ToString
public class Student {private int id;private String name;private String password;public static void main(String[] args) {Student student = new Student();student.setId(1);student.setName("张三");student.setPassword("123456");System.out.println(student.toString());}
}

5.1 使用@slf4j 注解输出日志

@RestController
@Slf4j  //当前的类中就可以直接使用 log 对象,@Slf4j 产生一个 log 对象,直接使用
public class LogController2 {@RequestMapping("/log2")public void log2() {log.trace("trace log2");log.debug("debug log2");log.info("info log2");log.warn("warn log2");log.error("error log2");}}

lombok 能够打印日志的密码就在 target 目录里面,target 为项目最终执行代码:

这个时候 @Slf4j 相当于生成一个 log对象

5.2 lombok 执行原理

Lombok 执行原理通过编译生成代码的时候进行翻译

上述代码进行编译,在 target 下边生成字节码,idea 会将字节码反编译成代码展示出来

这个时候可以看到已经没有 Lombok 的 set 和 get 注解,取而代之的是 set 和 get 方法:相当于 在编译期的时候生成注解所对应的方法

http://www.yayakq.cn/news/454748/

相关文章:

  • 长沙电子商务公司网站制作医院网站建设 招标
  • 国外网站推荐添加建设银行的网站
  • 石家庄营销型网站建设公司临沂的网站建设
  • 建设网站用英文怎么说小程序模版
  • 大气的网站源码汽车网站 源码
  • 聚美优品网的网站建设情况企业网站建设套餐 网络服务
  • 网站开发合同 黑客攻击条款网站建设北京市
  • 菠菜网站建设条件云主题 wordpress
  • 网站开发 需求惠州seo外包平台
  • 自己做的网站设定背景图像php外贸网站源码
  • 设计自己的网站如何实现响应式网页
  • 蓝色网站最新创建的网站
  • 网站建设做的快公司网站是否有必要销售产品
  • 济南网站建设的费用简单响应式网站设计代码
  • 收费网站有哪些wordpress右侧悬浮
  • wordpress 插件 pdf长沙网站seo推广
  • 怎样做展会推广网站扑克直播软件app开发
  • 企业培训 电子商务网站建设 图片wordpress 数据库密码
  • 没有域名网站吗后台登录wordpress
  • 千博企业网站管理系统哈尔滨创寻网站建设
  • 优化企业网站排名要多少钱ui个人作品集网站
  • 售房网站开发 .net家居网站建设公司
  • 高水平网站运营托管用二级域名做的网站算新站吗
  • 苏州网站建设姜超网站备案用户名
  • 网站访问速度分析WordPress不支持大数据
  • 苏州做网站的公司哪家最好wordpress 标题优化
  • 旅游类网站如何做推广如何做强一个网站的品牌
  • 网站制作的网站网络营销主要传播渠道
  • 苍南哪里有网站建设公司广州网站建设哪家强
  • 400网站建设办公郑州的网站建设公司有哪些