- 浏览: 952137 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (383)
- JSP 自定义标签实现 (1)
- JSP (2)
- javascript (161)
- JAVA (100)
- HTML (26)
- jQuery (11)
- J2EE (1)
- Log4J (1)
- HTML5 (6)
- DB2 (2)
- Spring (14)
- 浏览器兼容 (1)
- JavaMail (1)
- JAVA(转载) (1)
- freemarker (1)
- 项目管理 (1)
- 项目架构学习 (1)
- Oracle (11)
- 开源项目 (2)
- 网络编程 (4)
- C (1)
- C++ (0)
- Xpath (1)
- 待写 (10)
- JXL (1)
- XML (1)
- JNDI (2)
- POI (8)
- Struts2 (3)
- 异常解决方法 (1)
- Sql Server (2)
- windows (2)
- SqlServer (1)
- 前端 (1)
- 正则表达式 (2)
- 浏览器兼容问题 (2)
- 转载 (25)
- css (11)
- svn (5)
- 工程构建 (1)
- 好用的网站 (1)
- sql (3)
- chrome V8 (1)
- javacript 报表 (1)
- FusionCharts (1)
- eclipse (2)
- tomcat (4)
- hibernate (2)
- 硬件 (1)
- 杂烩 (1)
- Linux (1)
- ubuntu (1)
- 设计模式 (2)
- 缓存 (1)
- 数据库 (1)
- JVM (2)
- DOM4j (1)
- 其他 (1)
- JACOB (1)
- extjs (3)
- ligerUi (1)
- 在线HTML编辑器 (1)
- API (1)
- OpenOffice (1)
- webservice (1)
- json (1)
- 百度map (1)
- NodeJs (1)
- greeplum jdbc spring (1)
- easyui (1)
- hightchart (1)
- 游戏 (1)
- HttpClient (1)
- 正则 (1)
- canvas (4)
- HTML5,javascript,canvas (0)
最新评论
-
changelo:
缺少了秦皇岛市
中国省,市,区 json数据 -
yurui829:
解析配置行那等号前后有可能有空格,改为如下比较好:String ...
java 读取.ini配置文件工具类 -
贝塔ZQ:
poi生成excel文档,感觉蛮复杂的,可以试试用pageof ...
POI生成excel带下拉 -
langke93:
我发现greenplum 通过jdbc insert性能很差, ...
jdbc 配置连接greeplum数据,spring配置连接greeplum数据(简单配置学习) -
zhutulang:
哪有收邮件???
Spring 邮件接收发送实例
import java.io.BufferedInputStream; import java.io.BufferedOutputStream; import java.io.DataInputStream; import java.io.DataOutputStream; import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; import java.io.RandomAccessFile; import java.nio.IntBuffer; import java.nio.channels.FileChannel; public class compareMappedAndStream { private static int numOfInts = 4000000; private static int numOfUbuffInts = 2000000; private abstract static class Tester { private String name; public Tester(String name) { this.name = name; } public void runTest() { System.out.print(name + ": "); try { long start = System.nanoTime();// test(); double duration = System.nanoTime() - start; System.out.format("%.2f\n", duration / 1.0e9); } catch (IOException e) { throw new RuntimeException(e); } } public abstract void test() throws IOException; } /** * 测试各种流的效率 */ private static Tester[] tests = { /** * 测试Stream写的效率 */ new Tester("Stream Write") { @Override public void test() throws IOException { DataOutputStream dos = new DataOutputStream( new BufferedOutputStream(new FileOutputStream(new File( "temp.tmp")))); for (int i = 0; i < numOfInts; i++) { dos.writeInt(i); } dos.close(); } }, /** * 测试内存映射写的效率 */ new Tester("Mapped Write") { @Override public void test() throws IOException { FileChannel fc = new RandomAccessFile("temp.tmp", "rw") .getChannel(); IntBuffer ib = fc.map(FileChannel.MapMode.READ_WRITE, 0, fc.size()) .asIntBuffer(); for (int i = 0; i < numOfInts; i++) { ib.put(i); } fc.close(); } }, /** * 测试Steam读的效率 */ new Tester("Stream Read") { @Override public void test() throws IOException { DataInputStream dis = new DataInputStream(new BufferedInputStream( new FileInputStream("temp.tmp"))); for (int i = 0; i < numOfInts; i++) { dis.readInt(); } dis.close(); } }, /** * 测试Mapped读的效率 */ new Tester("Mapped Read") { @Override public void test() throws IOException { FileChannel fc = new FileInputStream(new File("temp.tmp")).getChannel(); IntBuffer ib = fc.map(FileChannel.MapMode.READ_ONLY,0,fc.size()).asIntBuffer(); while(ib.hasRemaining()){ ib.get(); } fc.close(); } }, new Tester("Stream Read/Write"){ @Override public void test() throws IOException { RandomAccessFile raf = new RandomAccessFile(new File("temp.tmp"), "rw"); raf.writeInt(1); for(int i = 0 ; i < numOfUbuffInts ; i ++){ raf.seek(raf.length() - 4); raf.writeInt(raf.readInt()); } raf.close(); }}, new Tester("Mapped Read/Write"){ @Override public void test() throws IOException { FileChannel fc = new RandomAccessFile("temp.tmp", "rw").getChannel(); IntBuffer ib = fc.map(FileChannel.MapMode.READ_WRITE,0,fc.size()).asIntBuffer(); ib.put(0); for(int i = 1 ; i < numOfUbuffInts ; i ++){ ib.put(ib.get(i -1)); } fc.close(); } } }; /** * 测试 * @param args */ public static void main(String[] args) { for(Tester tester : tests){ tester.runTest(); } } } 运行结果: Stream Write: 0.46 Mapped Write: 0.04 Stream Read: 0.46 Mapped Read: 0.04 Stream Read/Write: 43.14 Mapped Read/Write: 0.04
发表评论
-
JAVA IO 字节流实现文件copy效率比较
2014-12-24 13:32 3344package jonavin.io; import ... -
EhCache简单例子
2014-10-20 17:04 1187import net.sf.ehcache.Cache; ... -
java 读取.ini配置文件工具类
2014-10-09 16:29 9408import java.io.BufferedReader; ... -
POI读取excel文件通用代码(增强版--支持返回javaBean集合)---2003,2007
2014-09-25 13:21 2939import java.io.File; import j ... -
HttpClient模拟get,post请求并发送请求参数(json等)
2014-09-18 16:33 16939import java.io.IOException; ... -
POI读取Excel通用代码---支持2003,2007
2014-09-18 14:07 2155package com.citics.crm.custome ... -
将数据库树形记录转为java 树形数据结构
2014-08-24 18:36 4791/** * 转换为Tree结构 * @p ... -
java HTML2PDF HTML2DOC THML2Image 后台屏幕截图
2014-08-15 11:22 1295网上找的,下载学习吧。 -
java缓存技术学习
2014-07-25 18:05 5941package com.citics.crm.custome ... -
java unicode 转中文(学习用)
2014-07-10 09:47 1194第一种方式自己实现(笨,但可以知道原理) /** ... -
java+javascript获得两个日期之间的所有月份
2014-05-30 12:29 3278java版 ... -
java开发中有用的工具类
2014-01-03 14:51 0自己备用,不公开 -
java模拟调用Servlet
2013-12-26 13:27 1183public static void main(String ... -
JSOUP 网络爬虫
2013-12-17 10:17 874简单例子学习用 -
javax 邮件发送
2013-10-21 10:20 2468import java.util.Date; import ... -
[JODConverter]word转pdf心得分享(转)
2013-10-10 14:48 1928官方网站: http://www.artofsolving. ... -
java MD5机密工具
2013-09-13 09:33 1230/************************* ... -
JAVA 将文件转换为字节
2013-09-06 10:20 1344package com.tacct.tradecontrac ... -
javaBean转Map工具类
2013-09-05 13:37 9641package com.tacct.tradecontrac ... -
JAVA 操作blob数据然后生成word文件
2013-09-05 11:27 2107import java.io.*; import jav ...
相关推荐
过滤流(Filter Stream)是Java I/O框架中的一个重要概念,它提供了一种优雅的方式来进行数据的读写操作,同时允许我们添加额外的功能,如字符编码转换、数据压缩等。本篇文章将深入探讨Java I/O中的过滤流,以及...
OReilly.Java.I.O.2nd.Edition.May.2006 Java的io包主要包括: 1. 两种流:字节流(byte Stream)和字符流(character stream),这两种流不存在所谓的谁代替谁、谁比谁高级之说,它们互为补充,只是侧重点不同...
- **流(Stream)**:Java I/O中的流分为字节流(Byte Stream)和字符流(Character Stream)。字节流处理单个字节的数据,如InputStream和OutputStream家族;字符流处理Unicode字符,如Reader和Writer家族。 - **...
Java中的I/O流是程序与外部数据交互的重要机制,它允许数据在程序、文件、网络等之间流动。I/O流分为两大类:字符流(Character Stream)和字节流(Byte Stream),每类又分为输入流(Input Stream)和输出流...
### Java I/O详细笔记 #### 一、流的分类 Java I/O系统主要涉及四种基本的流分类方式:根据数据流动的方向、数据处理的类型、流处理的源以及是否使用了缓冲机制。 **1. 按数据流动方向** - **输入流(Input ...
【rtmp-rtsp-stream-client-java-master.zip】这个压缩包文件是针对安卓平台的一个开源项目,主要用于实现RTMP和RTSP直播推流功能。在Android Studio 3.5及以上版本中开发,它允许用户将手机上的视频内容实时推送到...
在Java中,I/O是通过一系列流(Stream)类来实现的,这些类允许数据从一个源头(如键盘、文件、网络连接)传输到目的地(如显示器、文件、网络)。下面我们将详细探讨Java I/O系统的关键知识点。 1. **流的分类**:...
Java I/O系统还包含过滤流(Filter Stream)、对象流(Object Stream)以及管道流(Piped Stream)等,它们提供了更高级的功能,如数据压缩、错误检测和校验、对象序列化等。了解并熟练掌握这些概念对于任何Java...
使用`fs-write-stream-atomic`库,开发者可以在保证文件系统操作的原子性的同时,享受Node.js的异步I/O性能,提高了应用程序的可靠性和安全性。这对于处理敏感数据或需要高可用性的服务来说,无疑是一个非常有价值的...
在Java编程语言中,I/O流(Input/Output Stream)是处理数据输入和输出的核心机制。本课程设计报告书——“Java课程设计报告书-学生版-1_I/O流与文件课程设计_”旨在帮助学生深入理解并掌握如何在Java中进行文件操作...
Java I/O, NIO, and NIO.2 is a power-packed book that accelerates your mastery of Java's various I/O APIs. In this book, you'll learn about classic I/O APIs (File, RandomAccessFile, the stream classes ...
Java性能优化是IT行业中至关重要的一个领域,尤其是在大型企业级应用和互联网服务中,高效的Java代码能够显著提升系统运行效率,降低服务器资源消耗。以下是对这四本经典书籍中的核心知识点的详细介绍: 1. **...
rtmp-rtsp-stream-client-java Library for stream in RTMP and RTSP. All code in Java. If you need a player see this project: https://github.com/pedroSG94/vlc-example-streamplayer Wiki ...
标题中的"two-stream-cnn-master MNIST-example"指的是一个基于双流卷积神经网络(Two-Stream Convolutional Networks)的MNIST手写数字识别示例项目。MNIST是机器学习领域常用的数据集,用于训练和测试手写数字识别...
- **流(Stream)的概念**:Java 的所有输入输出(I/O)设施都是基于流的,流提供了一种简单的方式来读写不同类型的二进制数据。 - **四种主要流类别**: - 字节流(Byte Streams) - 字符流(Character Streams) - 输入...
Java程序性能优化是Java开发中的重要环节,它旨在提高应用程序的运行效率,减少资源消耗,提升用户体验。在Java世界中,性能优化涵盖了多个层面,包括代码优化、内存管理、线程调度、数据库交互以及JVM参数调整等。...
Android-rtmp-rtsp-stream-client-java.zip,用于Android的RTMP和RTSP流媒体库。Java中的所有代码,安卓系统是谷歌在2008年设计和制造的。操作系统主要写在爪哇,C和C 的核心组件。它是在linux内核之上构建的,具有...
**正文** 前端开源库`file-stream-rotator`是一个专门针对日志管理的工具,它在前端开发中扮演着重要...在大型前端项目中,合理使用日志管理和流旋转技术,对于追踪错误、优化性能以及提升用户体验都具有积极意义。
- **JDK1.0-1.3**: 在此期间,Java的I/O模型主要依赖于传统的阻塞I/O方式,这种模式下,应用程序在等待I/O操作完成时无法执行其他任务,导致效率低下。此外,当时的Java在字符集编码支持、文本处理等方面也有诸多...