http://tutorials.jenkov.com/java-nio/index.html
https://www.ibm.com/developerworks/cn/education/java/j-nio/j-nio.html