Skip to content

AlicWang/java-nio

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

32 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

java-nio

java-nio 通道表示到实体,如硬件设备、文件、网络套接字或可以执行一个或多个不同 I/O 操作(如读取或写入)的程序组件的开放的连接。 在以往的java的IO操作的过程中都是面向字节流操作,并且读写操作是单向的操作,而在java1.4添加nio包新的io不再像以前的标准的io操作一样面向流操作,而NIO是面向块的操作,并且有通道、缓冲区等重要的部分组成。读写操作都是通过缓冲区在对应的通道进行读取和写入数据。 通道的所有已知实现类: AbstractInterruptibleChannel, AbstractSelectableChannel, DatagramChannel, FileChannel, Pipe.SinkChannel, Pipe.SourceChannel, SelectableChannel, ServerSocketChannel, SocketChannel

一般我们用的最多的是:
DatagramChannel:从UDP中读写网络数据

FileChannel:从文件中读写数据

ServerSocketChannel:针对面向流的侦听套接字的可选择通道,监听新进来的TCP连接,对每个新进的连接都会创建一个新的SocketChannel.

SocketChannel:从TCP中读写网络中的数据

此代码是自己在看 Apache Mina的时候写的例子

一、包含time echo 案例

二、发送图片并返回案例

三、自定义消息编码的案例

四、apache mina 心跳包机制的使用案例

五、apache UDP使用案例

六、综合案例-简单的纯文本发送消息和带文件的发送消息案例(待完善)

七、多人在线视频聊天系统(IOS、apache Mina 待定)

About

java-nio apache mina java nio

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Java 100.0%