说明
最近也有很多人来向我"请教",他们大都是一些刚入门的新手,还不了解这个行业,也不知道从何学起,开始的时候非常迷茫,实在是每天回复很多人也很麻烦,所以在这里统一作个回复吧。
Java学习路线
当然,这里我只是说Java学习路线,因为自己就是学Java的,对Java理当很熟悉,对于其它方面,我也不是很了解。
基础阶段
首先是基础阶段,在基础阶段,我们必须掌握Java基础,Mysql数据库,Oracle数据库,JDBC,Linux基础,Java8新特性,数据结构和算法,设计模式。
对于基础阶段,我们所要掌握的就是基础,虽然是基础,但学起来也够呛。因为是初学者,所以基础阶段会有一点难度,但只要肯坚持,这些也没什么难的。对于Linux、数据结构、算法和设计模式我们掌握一些基础就行了,也没必要学得非常透彻。
Web基础
基础阶段过后,我们还必须要掌握一些Web方面的知识,Html,JavaScript,JQuery和AJax,同样的,对于这些知识,我们只需掌握基础,而不需要深究,否则,你将耗费大量的时间。
JavaWeb
Web阶段过后,当然就是JavaWeb了,对于JavaWeb,我们需要掌握的知识有:Servlet,JSP,MVC设计模式,Cookie,Session,JavBean组件技术,EL表达式,JSTL表达式,过滤器Filter,监听器Listener,文件的上传下载,国际化。
JavaEE
最后是JavaEE阶段,当你学到这个阶段,你对Java的程序开发已经了如指掌。然而,自己开发的过程是艰难而复杂的,所以JavaEE阶段我们需要去学习一些非常优秀的框架,来帮助我们进行程序开发。
对于框架,我们需要学习Struts2,Hibernate,Spring,SpringMVC,JPA,SpringData,MyBatis,Spring Boot,Spring Cloud,Dubbo。要学习的框架其实非常多,有些框架也十分有难度,我们在学习阶段只要能够熟练使用它们即可,有能力的话可以研究一下源码,看看框架的底层实现。当然,除了框架,我们还需要学习Maven,Git,Github,ActiveMQ,Jenkins等。
在JavaEE阶段学习的东西是最多的,但如果你经历了JavaEE阶段的学习,你的编程水平将会有质的飞跃。
其它
这里是我在写了这篇文章几天后才加上的,有人向我反映,说数据结构和算法不学好就只能当个码农,说我在文章中指出"只需学习数据结构和算法的基础即可"是误导别人。确实,这句话是没说错,我在之前的文章中也强调过数据结构和算法的重要性,它们是程序的灵魂。然而,数据结构和算法是具有一定难度的,对于新手可能非常地不友好,新手要想彻底掌握它们是很困难的,所以我只是说在基础阶段掌握基础即可,而不需要去深究。而随着学习的深入,你的知识体系将会越来越庞大,这个时候,对于数据结构和算法可不能仅仅停留在表面了,我们应该去更加深入地研究这些东西。
在这里也感谢大家给我提出的意见,只要大家说的在理,说的是对的,我都会去及时改正。金无足赤,人无完人,在写文章的过程中,难免会有一些不太严谨的地方,这里也欢迎大家批评指正。
学习资源
我知道,对于有些名词,你们可能都没有听过。没关系,按照这个路线一点一点地往下学,相信你会感受到编程的魅力所在。
下面对整条知识路线进行一个梳理,并附上对应的学习资源,需要的小伙伴们私信我就好了。
————————————————
一、java基础:java300级
01_java入门阶段、02_面向对象基础、03_飞机小项目(java入门和对象练习)、04_面向对象深入和数组深入、05_常用类、06_异常机制、07_容器和数据结构、08_IO流技术、09_多线程、10_网络编程、11_手写服务器httpserver项目(java基础集大成者)、12_注解_反射_字节码_类加载机制、13_GOF23设计模式全解、13_GOF23设计模式全解.zip、14_正则表达式和文本操作、15_JDBC数据库操作、16_手写SORM框架(学有余力同学观看)、17_预科阶段(针对零基础和行业介绍,可跳过)
二、数据库:oracle数据库、 MySQL数据库
-
oralce数据库安装以及简单的SQL语句
-
oralce账户管理和查询语句
-
oralce的函数学习&分组&增加删除修改&SQL92
-
oracle的子查询和用户管理
-
oracle表操作和数据库对象(序列、索引、视图)
-
oracle图形界面操作和数据备份和分页
-
MySQL数据库
-
PowerDesigner使用和数据库设计三大范式
-
JDBC数据库操作技术
10.【加深课】Mysql优化深度讲解
- 【加深课】oracle数据库深度讲解
三、网页开发和设计
-
HTML【北京尚学堂·百战程序员】
-
CSS【北京尚学堂·百战程序员】
-
JAVASCRIPT【北京尚学堂·百战程序员】
-
jQuery【北京尚学堂·百战程序员】
-
EasyUI【北京尚学堂·百战程序员】
四、Servlet和JSP(JAVAEE基础)
-
Servlet入门和Tomcat服务器使用
-
Servlet深入_request和response对象
3.Servlet深入_转发和重定向_Cookie
4.Servlet深入_session_Context对象
-
Jsp学习和深入
-
用户管理系统实战【Servlet+jsp项目实战】
-
ajax技术
-
EL和JSTL标签库
-
过滤器
-
监听器
五、高级框架阶段
01 MyBatis3
02 Spring4
03 SpringMVC
04 SSM框架整合和核心要点复习
05 RBAC权限控制项目
-
hibernate3
-
hibernate4
-
JFinal框架
-
shiro安全框架
-
solr搜索框架
-
struts2
-
nginx服务器
-
redis缓存技术
-
jvm虚拟机优化
-
zookeeper
六、互联网架构阶段
-
Linux系统快速使用
-
Maven技术
-
Git
-
SVN
-
高并发编程和线程池
-
系统和虚拟机JVM调优
-
Java编程规范
-
网络编程高级(同步、异步、NIO、BIO、AIO)
-
netty高级网络编程框架
-
消息中间件ActiveMQ
-
单点登录
-
数据库与SQL优化
-
数据库集群和高并发
-
Dubbo
-
Redis
-
VSFTPD+NGINX
七、微服务
-
spring boot
-
SpringData
-
SpringCloud
八、分布式亿级高并发电商项目
-
电商Ego-基于SOA架构,使用Dubbo,逆向工程,分页插件完成商品查询
-
电商Ego-使用VSFTPD和Nginx完成商品新增
-
电商Ego-基于json格式完成商品规格参数管理
-
电商Ego-使用jsonp完成前台首页导航菜单
-
电商Ego-完成CMS系统
-
电商Ego-添加前台大广告位数据缓存
-
电商Ego-SolrJ操作SolrCloud
-
电商Ego-完成商品搜索功能
-
电商Ego-显示商品详细详情
-
电商Ego-完成SSO单点登录系统
-
电商Ego-购物车
-
电商Ego-订单系统实现
-
电商Ego-MySql读写分离+MyCat分库分表
-
电商Ego-项目部署
九、100个毕业设计项目
由于篇幅限制,小编这里只将此实战文档的所含内容全部展现出来了,需要获取完整文档用以学习的朋友们可以:关注小编+转发后+后台私信:【java】获取免费领取方式!