上篇文章中,我们对Netty中ChannelPipeline的构造与初始化进行了分析与总结,本篇文章我们将对ChannelHandler的添加与删除操作进行具体的的代码分析;
一、ChannelHandler的添加
下面是Netty官方的一段demo源码,可以看到在服务端初始化时执行了向ChannelPipeline中添加自定义channelHandler的操作。
```
ServerBootstrap b = new ServerBootstrap();
b.group(bossGroup, workerGroup).channel(NioServerSocketChannel.class).option(ChannelOption.SO_BACKLOG, 100)
.handler(new LoggingHandler(LogLevel.INFO)).childHandler(new ChannelInitializer() {
@Override
public void initChannel(SocketChannel ch) throws Exception {
ChannelPipeline p = ch.pipeline();
if (sslCtx != null) {
p.addLast(sslCtx.newHandler(ch.alloc()));
}
// p.addLast(new LoggingHandler(LogLevel.INFO));
// 向ChannelPipeline中添加自定义channelHandler
p.addLast(serverHandler);
}

常见的开源 License

MyBatis 结果映射总结

基于easyx的小时钟

一文带你搞懂 JWT 常见概念 & 优缺点

MySQL中的WHERE和HAVING

我使用Spring AOP实现了用户操作日志功能

Java学习 (21) 对象篇(01)面向过程&面向对象

超详细干货!Docker+PXC+Haproxy搭建高可用强一致性的MySQL集群

Java/后端学习路线

cookie+拦截器实现不同角色对应不同的登录页

Typora + PicGo + SM.MS实现图片自动上传

docker安装redis

后端接口对接注意事项

Markdown语法
