Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

37 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 待定)

其他相关项目:

一、未集成cas单点的权限管理系统

https://github.com/dongtian3240/sys

二、集成cas单点登录的企业系统管理

https://github.com/dongtian3240/pro

三、采用jasig耶鲁大学的cas server cas 单点登录项目

https://github.com/dongtian3240/cas

四、基于springsecurity oauth2认证方式的实现,token数据库存储,提供app后台服务端项目

https://github.com/dongtian3240/oauth2

五、网络应用框架Apache Mina 相关学习案例(综合案例-简单的纯文本发送消息和带文件的发送消息案例 以及多人在线聊天系统服务端)

https://github.com/dongtian3240/mina

About

java-nio apache mina java nio

Resources

Stars

1 star

Watchers

3 watching

Forks

Releases

Packages

Contributors

Languages