自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

追寻---专栏

java技术交流

  • 博客(12)
  • 资源 (9)
  • 收藏
  • 关注

原创 java nio学习(十二)

Java NIO与IO 当学习了Java NIO和IO的API后,一个问题马上涌入脑海: 我应该何时使用IO,何时使用NIO呢?在本文中,我会尽量清晰地解析Java NIO和IO的差异、它们的使用场景,以及它们如何影响您的代码设计。 Java NIO和IO的主要区别 下表总结了Java NIO和IO之间的主要差别,我会更详细地描述表中每部分的差异。 IO         

2015-01-05 16:27:53 902

原创 java nio 学习(十一)

Pipe Java NIO 管道是2个线程之间的单向数据连接。Pipe有一个source通道和一个sink通道。数据会被写到sink通道,从source通道读取。 这里是Pipe原理的图示: 创建管道 通过Pipe.open()方法打开管道。例如: Pipe pipe = Pipe.open(); 向管道写数据 要向管道写数据,需要访问si

2015-01-05 15:56:07 761

原创 java nio(十)

DatagramChannel Java NIO中的DatagramChannel是一个能收发UDP包的通道。因为UDP是无连接的网络协议,所以不能像其它通道那样读取和写入。它发送和接收的是数据包。 打开 DatagramChannel 下面是 DatagramChannel 的打开方式: DatagramChannel channel = DatagramChan

2015-01-05 15:48:44 885

原创 java nio学习(九)

ServerSocketChannel Java NIO中的 ServerSocketChannel 是一个可以监听新进来的TCP连接的通道, 就像标准IO中的ServerSocket一样。ServerSocketChannel类在 java.nio.channels包中。 ServerSocketChannel serverSocketChannel = ServerSocketChan

2015-01-05 15:39:19 959

原创 java nio学习(八)

SocketChannel Java NIO中的SocketChannel是一个连接到TCP网络套接字的通道。可以通过以下2种方式创建SocketChannel: 打开一个SocketChannel并连接到互联网上的某台服务器。一个新连接到达ServerSocketChannel时,会创建一个SocketChannel。 打开 SocketChannel 下面是So

2015-01-05 15:34:29 905

原创 java nio学习(七)

FileChannel Java NIO中的FileChannel是一个连接到文件的通道。可以通过文件通道读写文件。 FileChannel无法设置为非阻塞模式,它总是运行在阻塞模式下。 打开FileChannel 在使用FileChannel之前,必须先打开它。但是,我们无法直接打开一个FileChannel,需要通过使用一个InputStream、OutputS

2015-01-05 15:29:31 1096

原创 java nio学习(六)

Selector Selector(选择器)是Java NIO中能够检测一到多个NIO通道,并能够知晓通道是否为诸如读写事件做好准备的组件。这样,一个单独的线程可以管理多个channel,从而管理多个网络连接。 为什么使用Selector? 仅用单个线程来处理多个Channels的好处是,只需要更少的线程来处理通道。事实上,可以只用一个线程处理所有的通道。对于操作系统来说,线程之

2015-01-05 15:13:40 866

原创 java nio学习(五)

通道之间的数据传输 在Java NIO中,如果两个通道中有一个是FileChannel,那你可以直接将数据从一个channel(译者注:channel中文常译作通道)传输到另外一个channel。 transferFrom() FileChannel的transferFrom()方法可以将数据从源通道传输到FileChannel中(译者注:这个方法在JDK文档中的解释为将字节

2015-01-04 17:34:18 914

原创 java nio学习(四)

Java NIO开始支持scatter/gather,scatter/gather用于描述从Channel(译者注:Channel在中文经常翻译为通道)中读取或者写入到Channel的操作。 分散(scatter)从Channel中读取是指在读操作时将读取的数据写入多个buffer中。因此,Channel将从Channel中读取的数据“分散(scatter)”到多个Buffer中。 聚集(ga

2015-01-04 17:25:13 953

原创 java nio学习(三)

Java NIO中的Buffer用于和NIO通道进行交互。如你所知,数据是从通道读入缓冲区,从缓冲区写入到通道中的。 缓冲区本质上是一块可以写入数据,然后可以从中读取数据的内存。这块内存被包装成NIO Buffer对象,并提供了一组方法,用来方便的访问该块内存。 Buffer的基本用法 使用Buffer读写数据一般遵循以下四个步骤: 写入数据到Buffer 调用fli

2015-01-04 16:07:04 943

原创 java nio学习(二)

java NIO的通道类似流,但又有些不同: 既可以从通道中读取数据,又可以写数据到通道。但流的读写通常是单向的。 通道可以异步地读写。 通道中的数据总是要先读到一个Buffer,或者总是要从一个Buffer中写入。 正如上面所说,从通道读取数据到缓冲区,从缓冲区写入数据到通道。如下图所示: Channel的实现 这些是Java NIO中最重要的通道的实现:

2015-01-04 15:56:46 929

原创 java nio学习(一)

Java NIO 概述 Java NIO 由以下几个核心部分组成: ChannelsBuffersSelectors 虽然Java NIO 中除此之外还有很多类和组件,但在我看来,Channel,Buffer 和 Selector 构成了核心的API。其它组件,如Pipe和FileLock,只不过是与三个核心组件共同使用的工具类。因此,在概述中我将集中在这三个组件上。其它组件

2015-01-04 15:24:06 1111

java设计模式

设计模式(Design pattern)代表了最佳的实践,通常被有经验的面向对象的软件开发人员所采用。设计模式是软件开发人员在软件开发过程中面临的一般问题的解决方案。这些解决方案是众多软件开发人员经过相当长的一段时间的试验和错误总结出来的。

2018-06-26

Spring TestContext

Spring TestContext Framework是spring-test模块中提供的一个测试框架,能够用于单元测试和集成测试。

2018-06-26

SSH(三)视频

Struts2+Hibernate3.2+Spring2.0整合续三的视频,对java初学者不错!

2011-11-18

SSH(二)整合视频

Struts2+Hibernate3.2+Spring2.0整合的视频,对初学java的不错!

2011-11-18

SSH整合视频

struts2+spring2.5+hibernate3.2整合的视频,对初学者很有帮助!

2011-11-18

Extjs 3.0API 中文文档

Extjs 3.0API 中文文档,对于Extjs 开发者很有帮助!

2011-11-17

Extjs项目小图标

Ext项目Icons小图标1000个16x16,对Extjs项目开发很有帮助!

2011-11-17

html学习使用手册

对于html的初学者来说,实在是太好不过了,很多好的例子。

2011-08-31

Ext 3.3 中文文档.CHM

Ext 3.3 中文文档.CHM 学习参考资料,很不错的!

2011-08-30

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除