提示: 因为工程稍微有点大对我个人来说,所以可能在某些方面讲的不清楚或逻辑性不够强,如果有问题请及时@我。原工程:https://github.com/LineChen/(4)已经说了怎么构造一条消息。这篇要说的就是处理各种业务逻辑的具体。
package com.imomo_server;import java.io.FileOutputStream;
import java.nio.chan...
分类:
其他好文 时间:
2015-06-17 09:37:38
阅读次数:
104
1.Java NIO与阻塞IO的区别阻塞IO通信模型(在上一篇《J2SE网络编程之 TCP与UDP》博客中有所介绍)我们知道阻塞I/O在调用InputStream.read()方法时是阻塞的,它会一直等到数据到来时(或超时)才会返回;同样,在调用ServerSocket.accept()方法时,也会...
分类:
编程语言 时间:
2015-06-16 22:31:36
阅读次数:
213
首先啰嗦2。假如你不知道Netty怎么办怎么办。它可以是一个简单的搜索,找出。我只能说Netty是NIO该框架,它可用于开发分布式Java计划。详细情况可以做,我们可以尝试用你的想象力。技术。它是服务于人,而不是人活的局限性。经万事具备,那么我们先从一段代码開始。程序猿们习惯的上手第一步,自然是"H...
分类:
编程语言 时间:
2015-06-16 14:39:28
阅读次数:
184
原文中说了最重要的3个概念,Channel 通道Buffer 缓冲区Selector 选择器其中Channel对应以前的流,Buffer不是什么新东西,Selector是因为nio可以使用异步的非堵塞模式才加入的东西。以前的流总是堵塞的,一个线程只要对它进行操作,其它操作就会被堵塞,也就相当于水管没...
分类:
编程语言 时间:
2015-06-14 22:41:16
阅读次数:
174
Java NIO中的Glob模式详解作者:chszs,转载需注明。博客主页:http://blog.csdn.net/chszs一、什么是Glob?在编程设计中,Glob是一种模式,它使用通配符来指定文件名。例如:.java就是一个简单的Glob,它指定了所有扩展名为“java”的文件。Glob模式中广泛使用了两个通配符“”和“?”。其中星号表示“任意的字符或字符组成字符串”,而问号则表示“任意单个...
分类:
编程语言 时间:
2015-06-13 15:44:45
阅读次数:
168
什么是Mina?
Apache MINA is a network application framework which helps users develop...
Apache MINA是一个网络应用框架,可以帮助我们开发高性能和高扩展性的网络应用。它通过封装Java NIO提供了一个支持各种传输协议(如:TCP/IP和UDP/IP)的抽象事件驱动异步API。...
分类:
其他好文 时间:
2015-06-12 10:12:08
阅读次数:
238
今天在使用Java NIO的Channel和Buffer进行文件操作时候,报了java.nio.charset.MalformedInputException: Input length = 1异常,具体如下:
java.nio.charset.MalformedInputException: Input length = 1
at java.nio.charset.CoderResult.t...
分类:
编程语言 时间:
2015-06-12 01:01:59
阅读次数:
272
项目组是做IM产品的,服务端当然用的是NIO技术做通信底层。但是一直都是对NIO有些理论的了解,没有实践,最近有空了,就实践了下NIO。
NIO,新IO,也称之为非阻塞IO。非阻塞是它跟传统IO的最重要的区别之一。传统IO用Socket进行通信,NIO则用channel进行消息交互。channel必须注册到selector上,把它感兴趣的事件告诉selector。这是个观察者模式的实现。...
分类:
编程语言 时间:
2015-06-10 19:27:22
阅读次数:
134
Acceptor负责用来管理连接到tomcat服务器的数量,来看看Acceptor在tomcat服务器中的应用,是如何实现连接管理的,socket连接建立成功之后,是如何实现内容的读写的(读写是交由Poller机制去完成)。
先准备一点java nio中实现socket连接所需的基础知识:SocketChannel和ServerSocketChannel
SocketChann...
分类:
其他好文 时间:
2015-06-07 18:57:29
阅读次数:
248
转自:http://blog.csdn.net/xiazdong/article/details/7217022一、常识了解1.GBK包含GB2312,即如果通过GB2312编码后可以通过GBK解码,反之可能不成立;2.java.nio.charset.Charset.defaultCharset(...
分类:
其他好文 时间:
2015-06-07 17:16:55
阅读次数:
98