ioserver的学习体会

ioserver的学习体会
1. config. 设置地址(socketAddress)
   设置protocal, 如何从数据流转换成inputMessage
   设置具体的逻辑处理类 ioHandler
   ioservice
   config.start(server)

2. dataHandler 继承iohandlerAdpter类
   重写messageRecieved(session, msg)
      读取消息中的数据,逻辑处理后,生成新的消息
      通过session,发给客户端
3. protocol类
   集成protocolHandler
   实现onData方法:负责将bytebuffer数据,转换成msg, 放入list
   交给逻辑层处理

4. exampleMsg
   继承netMessage
   实现getContent方法,将数据转成字节数组方式


聊天例程
1,做好上述设置(socket, port, protocol, logicHandler),启动server
2. protocal, 设置不同的协议cmwap. cmnet
   实现cmwapprotocal
   读取长度,判断长度不足,则退出
   依次读取出数据,组成消息对象,放入队列
3. 逻辑处理类
   根据消息的cmdtype, 交给不同的类处理
   比如登录动作Login.java来处理
4. 登录业务逻辑
   要继承msgTaskProcess
   实现其中的run() 线程中的方法
   parse()解析上传的数据
   execute() 具体的逻辑处理,比如登录,验证帐号密码,然后下发数据(通过player数据)
5. Player对象,数据通道和逻辑的综合体
     

你可能感兴趣的:(socket)