按标识符分割处理器
getty也提供了按字符串标识符分割消息处理器 DelimiterFrameDecoder
顾名思义,就是每条消息都按照 指定的分隔符进行切割,目前默认的切割符是 \r\n
举例:
你好,我是getty\r\n,`你好吗?`\r\n
假设客户端发送上述字符串,通过按标识符分割处理器后,消息会切割成两条 你好,我是getty
你好吗?
发送给后面的消息接收处理器
AioServerStarter server = new AioServerStarter(8888);
server.channelInitializer(new ChannelInitializer() {
@Override
public void initChannel(AioChannel channel) throws Exception {
//获取责任链对象
DefaultChannelPipeline defaultChannelPipeline = channel.getDefaultChannelPipeline();
//添加 分隔符字符串处理器 按 "\r\n\" 进行消息分割
defaultChannelPipeline.addLast(new DelimiterFrameDecoder(DelimiterFrameDecoder.lineDelimiter));
//添加字符串解码器
defaultChannelPipeline.addLast(new StringDecoder());
//添加自定义的简单消息处理器
defaultChannelPipeline.addLast(new SimpleHandler());
}
}).start();