java学习路径

java base https://www.java.sx/java/index.html

java标准 https://jcp.org/en/home/index

java文档 http://docs.oracle.com/en/java/

java中文文档 http://www.oracle.com/technetwork/cn/java/javase/overview/index.html

实验楼 Java研发工程师学习路径 https://www.shiyanlou.com/paths/java

Java2平台包括:标准版(J2SE)、企业版(J2EE)和微缩版(J2ME)三个版本。J2SE,J2ME和J2EE,这也就是SunONE(Open NetEnvironment)体系。J2SE就是Java2的标准版,主要用于桌面应用软件的编程;J2ME主要应用于嵌入式系统开发,如手机和PDA的编程;J2EE是Java2的企业版,主要用于分布式的网络程序的开发,如电子商务网站和ERP系统。

Java SE 8.才2672个类,1121个接口,一共217个package

我跟你点一下常用的标准package。

  1. http://java.io (输入输出)

  2. java.lang (基本类型的对象,线程,以及注解反射等)

http://3.java.net 和 java.nio (java 网络部分和nio 读写)

4.java 8 新增的 java.time (日历和时间)

5.使用最多的java.util (分别涉及,常用数据结构,concurrent并发,锁,日志接口)

6.剩下就是一个 java.sql 的数据库操作,和javax.security 这类的常用加解密, xml操作(一般用第三方的)

好了,上面是官方标准库。你要说有多少门语言的标准库能比JAVA的更全。该做的事情都已经帮你弄好了,你还有什么需求?

来,我和你清点一下常用第三方库。

1.log 相关,log4j slf4j 之类的接口,一个下午可以搞定怎么使用,从此你不用考虑日志问题了,不管是远程的,本地地,格式怪异的。

2.网络相关,netty,这个就是nio的高级封装,学会怎么使用也就一天。

3.java.util 的补充包,google的guava 。lang 补充包 apache common lang,jodd(可选)。数据结构你几乎不用任何考虑,lang的扩充补全了标准的不足。

4.web 开发,springMVC spring mybatis(hibernate) ,三大件,这个我就不说了,看文档看文档。与之配合的是javaEE 标准库。

5.常用杂碎的各种包,json 格式包,数据库连接池,disruptor(从此生产者消费者模型,妈妈再也不用担心我乱写了),常用内存缓存工具 EhCache。时间调度 Quartz。

6.apache 项目组下还有一大堆其他的组件。

编译: javac -Djava.ext.dirs=../lib *.java