启用Log4j2日志框架
1 2 3 4 5 6 7 8 9 10 11 | <!--log4j2的依赖--> <dependency> <groupId>org.apache.logging.log4j</groupId> <artifactId>log4j-core</artifactId> <version> 2.19 . 0 </version> </dependency> <dependency> <groupId>org.apache.logging.log4j</groupId> <artifactId>log4j-slf4j2-impl</artifactId> <version> 2.19 . 0 </version> </dependency> |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 | <?xml version= "1.0" encoding= "UTF-8" ?> <configuration> <loggers> <!-- level指定日志级别,从低到高的优先级: TRACE < DEBUG < INFO < WARN < ERROR < FATAL trace:追踪,是最低的日志级别,相当于追踪程序的执行 debug:调试,一般在开发中,都将其设置为最低的日志级别 info:信息,输出重要的信息,使用较多 warn:警告,输出警告的信息 error:错误,输出错误信息 fatal:严重错误 --> <root level= "DEBUG" > <appender-ref ref= "spring6log" /> <appender-ref ref= "RollingFile" /> <appender-ref ref= "log" /> </root> </loggers> <appenders> <!--输出日志信息到控制台--> <console name= "spring6log" target= "SYSTEM_OUT" > <!--控制日志输出的格式--> <PatternLayout pattern= "%d{yyyy-MM-dd HH:mm:ss SSS} [%t] %-3level %logger{1024} - %msg%n" /> </console> <!--文件会打印出所有信息,这个log每次运行程序会自动清空,由append属性决定,适合临时测试用--> <File name= "log" fileName= "d:/spring6_log/test.log" append= "false" > <PatternLayout pattern= "%d{HH:mm:ss.SSS} %-5level %class{36} %L %M - %msg%xEx%n" /> </File> <!-- 这个会打印出所有的信息, 每次大小超过size, 则这size大小的日志会自动存入按年份-月份建立的文件夹下面并进行压缩, 作为存档--> <RollingFile name= "RollingFile" fileName= "d:/spring6_log/app.log" filePattern= "log/$${date:yyyy-MM}/app-%d{MM-dd-yyyy}-%i.log.gz" > <PatternLayout pattern= "%d{yyyy-MM-dd 'at' HH:mm:ss z} %-5level %class{36} %L %M - %msg%xEx%n" /> <SizeBasedTriggeringPolicy size= "50MB" /> <!-- DefaultRolloverStrategy属性如不设置, 则默认为最多同一文件夹下 7 个文件,这里设置了 20 --> <DefaultRolloverStrategy max= "20" /> </RollingFile> </appenders> </configuration> |
1 2 3 4 5 6 7 8 9 10 11 12 | public class HelloWorldTest { private Logger logger = LoggerFactory.getLogger(HelloWorldTest. class ); @Test public void testHelloWorld(){ ApplicationContext ac = new ClassPathXmlApplicationContext( "beans.xml" ); HelloWorld helloworld = (HelloWorld) ac.getBean( "helloWorld" ); helloworld.sayHello(); logger.info( "执行成功" ); } } |
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!