Java NIO and NIO2 are two evolutions of the Java I/O API. It does not make Java I/O obsolete in any way, but merely bring more functionalities, leveraging the capabilities of file systems, not used by Java I/O.
Java NIO and NIO2 have been added to the JDK to add more functionalities offered by the file systems that aren't used by Java I/O. In this course, Java Fundamentals: NIO and NIO2, you'll learn how to use Java NIO to read and write data efficiently in bulk mode, and asynchronously to handle more operations simultaneously. First, you'll explore the fundamental objects of this API, including Buffer, Channel, and Selector to precisely set up performant I/O applications for disk or network access. Next, you'll discover how to efficiently navigate through very large directory structures, and how to trigger actions on directory events plugged on the native capabilities of the file systems for better performance. Finally, you'll delve into all of these APIs in action in extended live coding sessions, showing you how to properly use the patterns and how to deal with errors. By the end of this course, you'll have the necessary knowledge to design and create robust and performant I/O systems by following the right patterns, whether you want to access file systems or networks.
Passionate about programming computers for over 20 years, Jose made his debut in assembler and C, C for SIMD parallel machines before adopting Java as an object-oriented language. Assistant professor in Paris North University for more than 15 years, Jose also brings his expertise to many projects, in various industrial fields.
Course Overview Hi, everyone, my name is Jose. I am very glad to present my new course about Java NIO and NIO2. I am talking to you from Paris, where I live and work as an assistant professor here at the university. I'm a Java Champion and Java Rockstar for Java (mumbles). Java Non-blocking IO or NIO is about adding features to Java IO for better performances. It provides the support for very large buffers or asynchronous capabilities. All those topics are precisely explained with real life use cases presented in live coding for both disk and network access. On the other hand, NIO2 brings native access to the file system with API to explore very large directory trees and to respond to file creations, deletions, and modifications events. This is also precisely explained in slides and live coding sessions. Before following this course, be sure to be familiar with the Java language, including the writing of basic lambda expressions and basic Java I/O notions. For that, you can check the Pluralsight Java library. This course is very technical, so I put many examples in it, first explained in slides and then D mode and live coding sessions to make things easy to understand for you.