闲人细嚼慢咽啃 Netty:模块依赖

本文以闲适的心态深入理解Netty,通过分析模块间的依赖关系,特别是netty-common模块和logging组件。介绍了如何查看Netty模块依赖,并探讨了InternalLogger接口和日志级别,以及日志框架的选择和实现,包括SLF4J、Log4J和JDK日志的优先级。最后,作者提及将探索JDK日志框架的实现。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

前言

最近闲来无事,把 Netty In Action 这本书的前226页翻译了一遍。我说的翻译是开着google 翻译。看了后还是没有什么感觉。就想自己看看代码。反正就学不会,也没有项目的压力,那就走马观花的看吧。把自己想想成一只小狗,酒足饭饱后躺在沙堆里,咬着刚从坑里面刨出来的一根骨头。顺便记录一下,方便以后回顾。本着不学无术,看稀奇的态度,走到哪里,看到哪里,这里没有干货,也不能快速上手(我还没有跑过demo)。管它的,玩呗。

模块间依赖

idea 有提供看模块依赖的功能,只需要选中项目子模块,鼠标右键,选择 Diagrams, 再选择 Show Diagram… 。 接着在弹出框 Show Diagram Type 里面选择 Project modules 就可以看到项目的模块依赖关系了。如果想看全部的项目模块依赖,需要选择 netty-all 这个模块。

上一张图:
netty-all

netty-common 模块

从模块上看,几乎所有的模块都要依赖 netty-common 这个子模块。而这个子模块不依赖于任何其他模块。从名字上也可以看出,他是一个公用模块。存放一些其他模块要用的工具类: 比如日志(logging),并发(concurrent),常量定义类和数据接口工具类等。

netty util

netty-common logging

先看看 logging 这个包的类图吧:
netty logging package class diagrams
可以看到 InternalLogger 这个接口,算是日志这个功能萌发的起点了。它根据日志的级别定了打印日志的不同方式。日志级别是在 InternalLogLevel 这个类里面定义的。

  1. TRACE
  2. DEBUG
  3. INFO
  4. WARN
  5. ERROR

接口定义了打印日志的六种方式:

  • (String message) 直接打印日志消息
  • (String format, Object arg) 给出只能替换一个占位符的日志格式,arg 替换格式中唯一的一个 {} 占位符。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值