为第一个原生Spring5应用程序添加上Log4J日志框架!

😉😉 学习交流群:

✅✅1:这是孙哥suns给大家的福利!

✨✨2:我们免费分享Netty、Dubbo、k8s、Mybatis、Spring...应用和源码级别的视频资料

🥭🥭3:QQ群:583783824   📚📚  工作微信:BigTreeJava 拉你进微信群,免费领取!

🍎🍎4:本文章内容出自上述:Spring应用课程!💞💞

💞💞5:以上内容,进群免费领取呦~ 💞💞💞💞

一:Spring整合日志框架

1:为什么Spring要和日志框架进行整合

        Spring和日志框架整合之后,日志框架就可以在控制台中输出Spring框架运行时的一些重要的信息。方便我们了解spring程序的运行的过程,方便我们调试程序

2:Spring如何整合日志框

        Spring不同的版本对于日志框架的整合,不同的框架整合起来是有区别的,对于Spring1.2.3这是Spring的早期版本,都是和与Commons-logging(Apache)进行整合。Spring4尤其是Spring5之后,默认的日志框架是logback log4j2这两个框架,默认的意思就是已经帮我们整合好了的。我们可以选择用logback,也可以选择用Log4J,log4j2和log4j也是不太一样,本次我们让Spring整合Log4J就好了

一:操作步骤

1:依赖添加

        这个东西叫做日志门面,他的核心作用是把Spring5默认集成的日志框架Logback和Log4J2进行干掉,进而来支持我们的Log4J,详细的可以去日志课程中去看,引入这个依赖的目的就是为了让Spring支持Log4J摒弃另两个日志框架。

        <dependency><groupId>org.slf4j</groupId><artifactId>slf4j-api</artifactId><version>1.7.25</version></dependency><dependency><groupId>log4j</groupId><artifactId>log4j</artifactId><version>1.2.17</version></dependency>


2:引入log4.properties

log4j.rootLogger=debug,console
log4j.appender.console=org.apache.log4j.ConsoleAppender
log4j.appender.console.Target=System.Out
log4j.appender.console.layout=org.apache.log4j.PatternLayout
log4j.appender.console.layout.ConversionPattern=[frame] %d{yyyy-MM-dd HH:mm:ss,SSS} - %-4r %-5p [%t] %C:%L %x - %m%n

        到这里就直接就大工搞成了,在Spring5中集成Log4J

😉😉 学习交流群:

✅✅1:这是孙哥suns给大家的福利!

✨✨2:我们免费分享Netty、Dubbo、k8s、Mybatis、Spring...应用和源码级别的视频资料

🥭🥭3:QQ群:583783824   📚📚  工作微信:BigTreeJava 拉你进微信群,免费领取!

🍎🍎4:本文章内容出自上述:Spring应用课程!💞💞

💞💞5:以上内容,进群免费领取呦~ 💞💞💞💞

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/179430.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【.NET全栈】.net的微软API接口与.NET框架源码

文章目录 0 前言1 微软官方.net接口学习2 .NET框架源码总结 0 前言 如果浏览器打不开链接&#xff0c;换一个浏览器打开。 我是 打不开微软的链接&#xff0c;使用&#xff1a; 可以打开&#xff01;&#xff01;&#xff01; 1 微软官方.net接口学习 https://docs.microsoft…

Golang Proxy服务:构建高性能的网络代理

Golang Proxy服务&#xff1a;构建高性能的网络代理 简介 在当今互联网时代&#xff0c;代理服务变得日益重要。它可以帮助用户访问被限制的内容&#xff0c;保护用户隐私&#xff0c;加速网络访问等。Golang是一种高性能的编程语言&#xff0c;它的并发特性和网络库使得它成…

如何写好产品软文?软文撰写指南!

针对某种产品写一篇软文&#xff0c;我们应该怎么构思&#xff0c;怎么提笔去写&#xff0c;怎么写得让用户认可我们的产品&#xff0c;并产生消费的冲动&#xff0c;这是需要讲究技巧的。 今天伯乐网络传媒来给大家分享三个步骤&#xff0c;教你轻轻松松撰写一篇爆文&#xf…

电子学会C/C++编程等级考试2022年03月(二级)真题解析

C/C++等级考试(1~8级)全部真题・点这里 第1题:温度统计 现有一段时间的温度数据,请统计指定温度出现的次数。 时间限制:1000 内存限制:65536输入 第一行一个整数n,表示温度数据的个数。(0 < n ≤ 200) 第二行n个整数,以空格分隔,每个整数表示一个温度,温度的范围大…

Opencv-C++笔记 (19) : 分水岭图像分割

文章目录 一、基于距离变换与分水岭的图像分割1、图像分割2、距离和变换与分水岭距离变换常见算法有两种分水岭变换常见的算法 3、距离变换API函数接口4、watershed 分水岭函数API接口步骤 5、代码 一、基于距离变换与分水岭的图像分割 1、图像分割 图像分割(Image Segmentat…

LeetCode 每日一题 2023/11/20-2023/11/26

记录了初步解题思路 以及本地实现代码&#xff1b;并不一定为最优 也希望大家能一起探讨 一起进步 目录 11/20 53. 最大子数组和11/21 2216. 美化数组的最少删除数11/22 2304. 网格中的最小路径代价11/23 1410. HTML 实体解析器11/24 2824. 统计和小于目标的下标对数目11/25 14…

c++中using的声明

using的编译指令 using的编译指令使整个命名空间的标识符可用 #include<iostream> using namespace std; namespace namea { int a 10; void foo() { cout << "hello using" << endl; } } void test01(){ //int a 100;…

解密编程难题:程序员的突破之路

引言&#xff1a; 在编程的世界里&#xff0c;技术难题就像是一道道难以逾越的障碍&#xff0c;让程序员们倍感挑战。Bug、性能优化和跨平台兼容性等问题&#xff0c;常常困扰着开发者们。然而&#xff0c;正是这些难题激发了程序员们的求知欲和创造力&#xff0c;让他们不断寻…

职场“雷人”瞬间

职场是人际交往的舞台&#xff0c;而在这个舞台上&#xff0c;总会有一些令人哭笑不得的瞬间。领导的奇怪任务、同事的自以为是&#xff0c;抑或是技术一无所知的领导对任务的荒谬要求&#xff0c;这些故事让我们在工作中既有欢笑&#xff0c;又有无语。 1. 领导的“挥洒自如”…

Android问题记录 - Unable to make field private final java.lang.String java.io.File.path accessible(持续更新)

文章目录 前言开发环境问题描述问题分析解决方案补充内容最后 前言 最近一个Flutter项目有新需求&#xff0c;开发时一直是在iOS设备上运行&#xff0c;花了几天做完后运行到Android设备测试&#xff0c;结果项目构建失败了。 开发环境 Flutter: 3.7.11Android Studio: 2022…

Golang实现YOLO:高性能目标检测算法

引言 目标检测是计算机视觉领域的重要任务&#xff0c;它不仅可以识别图像中的物体&#xff0c;还可以标记出物体的位置和边界框。YOLO&#xff08;You Only Look Once&#xff09;是一种先进的目标检测算法&#xff0c;以其高精度和实时性而闻名。本文将介绍如何使用Golang实…

linux 内存回收lru算法代码注释1

本文为旧的lru算法&#xff0c;多代lru算法与旧算法的区别可稳步&#xff1a;linux内存回收mglru算法-CSDN博客 1.shrink_node_memcgs node_reclaim->__node_reclaim->shrink_node&#xff0c;这里调用shrink_node_memcgs回收后&#xff0c;要判断下是否分配内存速度比…

对坐标的曲面积分@第二类曲面积分

文章目录 abstract曲面基本概念双侧曲面有向曲面曲面区域投影平面区域投影 对坐标的曲面积分流向曲面一侧的流量简单情形 一般情形小结 对坐标的曲面积分其他定义第二类曲面积分的存在性并写和简写流量用第二类曲面积分描述 性质对坐标的曲面积分的计算公式的其他形式应用例例 …

使用webdriver-manager自动下载浏览器驱动(python)

使用webdriver-manager自动下载浏览器驱动&#xff0c;再也不用担心webdriver版本问题 文章目录 01 简介 02 安装webdriver_manager 03 ChromeDriver 3.1 Selenium 3 用法 3.2 Selenium 4 用法 04 EdgeChromiumDriver 4.1 Selenium 3 用法 4.2 Selenium 4 用法 05 GeckoDrive…

MySQL进阶知识:二

目录 视图 基本语法 视图的更新 视图的作用 存储过程 介绍 存储过程基本语法 存储过程的变量 系统变量 用户自定义变量 局部变量 存储过程的判断逻辑 存储过程的参数 存储过程中的流程控制 存储过程中的循环 while的基本语法 repeat的基本语法 loop的基本语法…

金山办公前端二面

1. react 和 vue的区别 还有jquery&#xff1f; &#xff08;1&#xff09; jquery 和 vue、react 的区别&#xff1a; vue 和 react : 数据和视图分离 以数据驱动视图&#xff0c;只关心数据变化 dom 操作被封装&#xff08;数据驱动&#xff09; jquery&#xff1a;依靠 do…

【问题解决!】OSError: [WinError 1455] 页面文件太小,无法完成操作。Error loading “c:\Anaconda3\lib

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 问题描述问题原因二、解决方法 问题描述 在使用pytorch跑深度学习的时候报错OSError: [WinError 1455] 页面文件太小&#xff0c;无法完成操作。Error loading “c…

系列七、事务

一、事务 1.1、概述 事务是数据库操作的基本单元&#xff0c;它是指逻辑上的一组操作&#xff0c;要么都成功&#xff0c;要么都失败。典型场景&#xff1a;转账&#xff0c;例如Jack给Rose转账1000元&#xff0c;转账成功&#xff1a;Jack账户的余额少1000元&#xff0c;Rose…

【C++】enum枚举与强类型枚举

enum 文章目录 enumenum枚举枚举变量强类型枚举 enum枚举 C的enum工具提供了一种创建符号常量的方式&#xff0c;这种方式可以替代const 枚举类型定义用关键字enum标识 enum 标识符 {枚举数据表 }&#xff1b;枚举数据表的值都是整数。第一个枚举成员的默认值为整型的0&…

人脸识别经典网络-MTCNN(含Python源码实现)

人脸检测-mtcnn 本文参加新星计划人工智能赛道&#xff1a;https://bbs.csdn.net/topics/613989052 文章目录 人脸检测-mtcnn1. 人脸检测1.1 人脸检测概述1.2 人脸检测的难点1.3 人脸检测的应用场景 2. mtcnn2.1 mtcnn概述2.2 mtcnn的网络结构2.3 图像金字塔2.4 P-Net2.5 R-Ne…