or
Sign in to turn on 1-Click ordering.
 
 
Express Checkout with PayPhrase
What's this? | Create PayPhrase
More Buying Choices
39 used & new from $18.88

Have one to sell? Sell yours here
 
   
Java NIO
 
 
Tell the Publisher!
I’d like to read this book on Kindle

Don’t have a Kindle? Get your Kindle here.
 
  
4.1 out of 5 stars  See all reviews (15 customer reviews)

List Price: $34.95
Price: $23.07 & eligible for FREE Super Saver Shipping on orders over $25. Details
You Save: $11.88 (34%)
o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o
In Stock.
Ships from and sold by Amazon.com. Gift-wrap available.

Want it delivered Wednesday, November 18? Choose One-Day Shipping at checkout. Details
27 new from $19.06 12 used from $18.88
Like this book? Find similar titles from O'Reilly and Partners in our O'Reilly Bookstore.

Best Value

Buy Java Management Extensions and get Java NIO at an additional 5% off Amazon.com's everyday low price.

Java Management Extensions + Java NIO
Buy Together Today: $47.43

Show availability and shipping details

  • Java Management Extensions

    In Stock.
    Ships from and sold by Amazon.com.
    This item ships for FREE with Super Saver Shipping. Details

  • This item: Java NIO

    In Stock.
    Ships from and sold by Amazon.com.
    Eligible for FREE Super Saver Shipping on orders over $25. Details


Customers Who Bought This Item Also Bought

Java Network Programming, Third Edition

Java Network Programming, Third Edition

by Elliote Harold
3.8 out of 5 stars (35)  $26.37
Java I/O

Java I/O

by Elliote Harold
3.8 out of 5 stars (29)  $40.49
Java Generics and Collections

Java Generics and Collections

by Maurice Naftalin
4.6 out of 5 stars (23)  $23.09
Java Concurrency in Practice

Java Concurrency in Practice

by Brian Goetz
4.8 out of 5 stars (60)  $37.79
Java Threads

Java Threads

by Scott Oaks
3.5 out of 5 stars (41)  $26.37
Explore similar items

Editorial Reviews

Product Description

Many serious Java programmers, especially enterprise Java programmers, consider the new I/O API--called NIO for New Input/Output--the most important feature in the 1.4 version of the Java 2 Standard Edition. The NIO package includes many things that have been missing from previous editions of Java that are critical to writing high-performance, large-scale applications: improvements in the areas of buffer management, scalable network and file I/O, character-set support, and regular expression matching. Most of all, it boosts performance and speed dramatically. Java NIO explores the new I/O capabilities of version 1.4 in detail and shows you how to put these features to work to greatly improve the efficiency of the Java code you write. This compact volume examines the typical challenges that Java programmers face with I/O and shows you how to take advantage of the capabilities of the new I/O features. You'll learn how to put these tools to work using examples of common, real-world I/O problems and see how the new features have a direct impact on responsiveness, scalability, and reliability. Because the NIO APIs supplement the I/O features of version 1.3, rather than replace them, you'll also learn when to use new APIs and when the older 1.3 I/O APIs are better suited to your particular application. Java NIO is for any Java programmer who is interested in learning how to boost I/O performance, but if you're developing applications where performance is critical, such as game computing or large-scale enterprise applications, you'll want to give this book a permanent spot on your bookshelf. With the NIO APIs, Java no longer takes a backseat to any language when it comes to performance. Java NIO will help you realize the benefits of these exciting new features.


About the Author

Ron Hitchens is a California-based computer consultant and educator whose career dates back to the disco era. His first exposure to computers was operating mainframes in the Air Force. His first programming language was COBOL, learned from a friend's borrowed textbook. Since that time Ron has used just about every computer system and programming language you can imagine: from 6502 assembler to XSLT. Ron spent much of the 1980s at the University of Texas at Austin, as student and staffer, where he burrowed deep into the Unix kernel and assisted with many interesting research projects. Ron spent the next several years doing kernel work for clients such as IBM and Unisys. Ron has also developed and taught professional development courses for the same clientele. Following a brief flirtation with C++, Ron fell in love with Java and has spent the last several years employing server-side Java technologies to build Web applications for clients ranging from start-ups to Fortune 500 companies. Ron is Founder and President of Ronsoft Technologies (www.ronsoft.com).

Product Details

  • Paperback: 312 pages
  • Publisher: O'Reilly Media; 1st edition (August 27, 2002)
  • Language: English
  • ISBN-10: 0596002882
  • ISBN-13: 978-0596002886
  • Product Dimensions: 9.1 x 7 x 0.7 inches
  • Shipping Weight: 1.1 pounds (View shipping rates and policies)
  • Average Customer Review: 4.1 out of 5 stars  See all reviews (15 customer reviews)
  • Amazon.com Sales Rank: #522,849 in Books (See Bestsellers in Books)

Inside This Book (learn more)

What Do Customers Ultimately Buy After Viewing This Item?


Tags Customers Associate with This Product

 (What's this?)
Click on a tag to find related items, discussions, and people.
 
(4)
(3)

Your tags: Add your first tag
 

Sell a Digital Version of This Book in the Kindle Store

If you are a publisher or author and hold the digital rights to a book, you can sell a digital version of it in our Kindle Store. Learn more

 

Customer Reviews

15 Reviews
5 star:
 (9)
4 star:
 (1)
3 star:
 (2)
2 star:
 (3)
1 star:    (0)
 
 
 
 
 
Average Customer Review
4.1 out of 5 stars (15 customer reviews)
 
 
 
 
Share your thoughts with other customers:
Most Helpful Customer Reviews

 
20 of 21 people found the following review helpful:
5.0 out of 5 stars A very good summary and explanation of the New I/O in Java, April 3, 2003
By David Young (Sandy, UT) - See all my reviews
(REAL NAME)   
At only six chapters and 282 pages (including the index) one might think "Java NIO" (short for "New I/O") is little more than a cursory examination of the NIO packages introduced in J2SE 1.4 as a response to the Java Specification Request (JSR) #51. Yet, despite its relatively compact size, Mr. Hichens has done a very good job of introducing and explaining the many aspects of this New I/O. The book even includes parts of JSR 51 that are only tangentially related to I/O, such as the new regular expression processing found in java.util.regex and the new pluggable character set mappings.

Chapter 1 is a primer on general I/O concepts and mechanisms and provides a useful foundation for the following information. Beginning with the basics as a foundation is a strategy that Mr. Hichens uses in each of the subjects in the following chapters. It's an important first step, often omitted in books more interested in prose than instruction.

Chapter 2 is a thorough explanation of the various Buffer classes. As the means for data accumulation and manipulation, Buffers are a natural first step in explaining the NIO package. It begins with a fairly detailed basic description followed with sections labeled: Creating, Accessing, Filling, Flipping, Draining, Compacting, Marking, Comparing, Bulk Moves, Duplicating, etc. Each section provides simple yet useful examples of the various operations along with some helpful hints and warnings of potential pitfalls.

Chapter 3 adds about all you'd want to know about the channels used to convey the data into and out of buffer. As the book explains, Channels "are not an extension or enhancement, but a new, first-class Java I/O paradigm. ... A Channel is a conduit that transports data efficiently between byte buffers and the entity on the other end of the channel (usually a file or socket)." In the ensuing sections: Scatter/Gather, File Channels, Memory-Mapped Files, Socket Channels, Pipes and The Channel Utility Classes, the use of channels within the NIO paradigm are extensively explained.

Chapter 4 covers Selectors. Selectors add another completely new ability to Java 1.4. With selectors Java now has a much more sophisticated and integrated ability to do asynchronous and multiplexed I/O. This is obviously very important to anyone dealing with real-time and/or high-demand I/O and it is one of the main reasons for JSR 51.

The book does a very good job of explaining the concept and use of Selectors in chapter sections entitled: The Selection Process, Stopping the Selection Process, Managing Selection Keys, Concurrency, Asynchronous Closability and Selection Scaling.

Chapter 5 introduces Regular Expressions and explains the use of the new java.util.regex package. Regular expression processing was part of the JSR 51 and thus part of this book. While not strictly I/O related, as anyone familiar with Perl can attest, regular expression processing is very useful when it comes to manipulating any textual data used in I/O.

While it covers the Java Regular Expression API very well, it is not comprehensive enough to include the many intricacies of regular expressions. Of course O'Reilly has that covered in Jeffrey Friedl's book, "Mastering Regular Expressions."

The last chapter, Chapter 6, "Character Sets", is a pretty close examination of the actual data moved in I/O and demonstrates how Java 1.4 represents it in the class Charset.

If you've ever wondered about character sets and how they are involved in character encoding or how one character set might be compared with or encoded into another, this chapter will go a long way toward filling you in.

The book concludes with three appendices:

* NIO and the JNI - A more detailed explanation of a new Java ability to use system memory allocated with native (JNI) code. This is one way they managed to improve the performance of Java real-time 3D applications so dramatically.

* Selectable Channels Service Provider Interface (SPI) - Basically explains why this API is beyond the scope of the book and why it wouldn't be useful to anyone not programming a JVM or high-performance App server.

* NIO Quick Reference - Just as the name implies.

In summation, the concepts range from basic to advanced yet are presented in such a way that, even while being explained, the information is understandable and can be used for future reference purposes. The examples are simple yet useful in demonstrating the concepts and the implementation of them. The style is informative and complete yet very accessible and informal. Overall, a well written book useful to anyone needing to know the workings of the NIO packages of Java 1.4.
Comment Comment | Permalink | Was this review helpful to you? Yes No (Report this)



 
28 of 31 people found the following review helpful:
2.0 out of 5 stars OK for beginners, January 18, 2003
I bought this book because of the lack of material on java.nio.
The book is a good introduction to java.nio but that is the extent of it. Half the book is an api reference and regular expressions (why is this even covered in this book?).
The rest tells you a little bit about the API, but not how to use it. There are examples, but you have to download them from the internet (ie no CD with the book).

The best chapter you can download for free anyway, so don't bother buying the book. Just download the free chapter and the free examples. The material on the internet from this book covers 90% of what you need to know.

Comment Comment | Permalink | Was this review helpful to you? Yes No (Report this)



 
13 of 13 people found the following review helpful:
4.0 out of 5 stars Pretty good overview but consider using a framework., October 29, 2004
By Thomas Alison (Hoboken, NJ United States) - See all my reviews
(REAL NAME)   
This is a pretty good overview, particularly for those who have no previous experience with non-blocking IO. The author explains the concept of buffers very well, with useful diagrams illustrating the differences between position, limit, etc.

The material on selectors and readiness selection is also strong.

The problem is, there are idiosyncracies to NIO that make it difficult to use effectively for large-scale, high-performance applications without some in-depth knowledge.

If you're really looking to architect a substantial NIO server or client, read this book for the overview, but also be sure to take a look at the open source Netty framework by Trustin Lee, or Ember IO by Mike Spille to see good NIO implementations that you can use as a building block.
Comment Comment | Permalink | Was this review helpful to you? Yes No (Report this)


Share your thoughts with other customers: Create your own review
 
 
 
Most Recent Customer Reviews

5.0 out of 5 stars Excellent book on Java NIO
I really enjoyed this book, and found it very helpful in learning about Java NIO. All of the code I tried worked, and I was able to improve my older Java IO-based code quickly as... Read more
Published 2 months ago by Eric J. Bruno

5.0 out of 5 stars Great book for a very overlooked subject
This is a great book on a subject that seems to get swept under the covers alot. NIO is very powerful but very confusing and this book really helps. Read more
Published 7 months ago by Andrew Anderson

2.0 out of 5 stars A book by RonF Hitchens
No, that's not a mistake the F in the RonF, I really meant it.. in italian "ronf ronf" stands for the sleeping snore, and that's what you will be doing if you try to read this... Read more
Published on November 17, 2006 by Riccardo Audano

3.0 out of 5 stars Ok, but no great.
I am not sure what else is out there? The book ok, but not really remarkable in any way.
Published on January 18, 2004 by stukeybug

5.0 out of 5 stars A Great Book for NIO
NIO is a great IO class, I think it's the best package presented by Sun since Swing, it provides you with more than what you need from NIO class in just 250 pages.
Published on August 31, 2003 by tamerbadr5

3.0 out of 5 stars Good introduction to NIO (and regular exprs??), lacks depth
The book is useful to get started on nio, but you may overgrow it after a week:
it does not delve deeply into the matter. Read more
Published on August 5, 2003 by Serge Zloto

5.0 out of 5 stars A SOUND KNOWLEDGE-SHARING TOOL
What Ron Hitchens did with this book is complete knowledge-sharing. "Java NIO" is just over three-hundred pages, yet, it is big enough to supply developers all the... Read more
Published on January 19, 2003 by reviewer

5.0 out of 5 stars Concise and complete.
A good book overall. Java NIO is a pretty formidable subject. The author does a decent job with this material. The details are concise and complete.
Published on December 2, 2002 by Timothy Bauer

5.0 out of 5 stars A great read!
Every once in a while, a truly outstanding book comes along, that is a must-read for everyone in a given field. This is such a book. Read more
Published on October 26, 2002 by James Huddleston

5.0 out of 5 stars This book is excellent!
At first I thought, "Oh no, another book from O'Reilly that is going to be mediocre", but boy was I wrong! Read more
Published on October 8, 2002 by Troiter

Only search this product's reviews



Customer Discussions

This product's forum
Discussion Replies Latest Post
No discussions yet

Ask questions, Share opinions, Gain insight
Start a new discussion
Topic:
First post:
Prompts for sign-in
 


Active discussions in related forums
Discussion Replies Latest Post
Textbooks for Kindle DX? 62 12 hours ago
Anyone need psychology testbook- trying to sell a used copy 2 2 days ago
textbook scam 72 2 days ago
Search Customer Discussions
Search all Amazon discussions
   




Product Information from the Amapedia Community

Beta (What's this?)


Look for Similar Items by Category


Look for Similar Items by Subject

 

Feedback

If you need help or have a question for Customer Service, contact us.
 Would you like to update product info or give feedback on images?
Is there any other feedback you would like to provide?

Your comments can help make our site better for everyone.


Your Recent History

 (What's this?)

After viewing product detail pages or search results, look here to find an easy way to navigate back to pages you are interested in.