首页 > hot资讯 > Java开发十年,这套Java学习体系最靠谱

Java开发十年,这套Java学习体系最靠谱

更新时间:2019-06-19 16:03 浏览3164次 来源:动力节点

  在这里我也同时提醒查看本路线的同学,这套路线是依照10年以上的Java开发老司机的工作经历所总结出来的相关知识点,分为几大阶段,内容很多,具体你需要花多少时间才能够全部学完这个因人而异,毕竟没人知道你在学习的过程中是否会时时被打断。


  然后就是,如果你不是一个能接受新的挑战的人,就不建议你学习了。毕竟编程可不是一招鲜吃遍天的,这只是一个开端,后续你可能还有更多需要学习的,更多挑战。如果你是一个喜爱挑战并解决问题的,那么欢迎你进入Java的世界!


1.png

2.png3.png4.png5.png6.png7.png8.png


  Java学习前的一些准备


  • JDK-(JavaSEDevelopmentKit)


  JDK是Java开发所需要的环境,就跟我们想玩某个网游一样,玩之前一定是需要先安装相应的程序包的。那这个JDK就是我们准备登陆Java大陆前需要安装的一个程序包。


  • IDE-(IntegratedDevelopmentEnvironmen)


  IDE是集成开发环境,一般集成开发环境都会带有JDK,可以使用自带的JDK也可以使用我们下载的JDK,不同的IDE配置不同。Java常用的IDE有Eclipse、MyEclipse、IntelliJIDEA。IDE具备代码分析、补全、变异、调试等常用功能,可以大大的提高开发人员的编程效率。


  下载地址:http://www.bjpowernode.com/Video/ziliao.html


  阶段大致细节


  1、入门基础


  • Java简介


  • 了解什么是Java;代码语法基本格式;输出表达式。


  • 了解Java大致的编译以及执行过程


  • Java语言基础、循环、数组;了解类和对象


  • 掌握Java的基本数据类型和引用数据类型有哪些;


  • 掌握强制数据类型转换和自动类型提升规则;


  • 常量如何声明及赋值;


  • 循环的语法及作用;


  • 数组的声明及定义;


  • 掌握类的概念以及什么是对象。


  • OOP封装、继承、多态


  • 面向对象的三大特征,本节内容非常重要也相对来说较为难以理解,一定要耐下心来好好理解。


  • java.util.*包下的常用类


  • util包下的Collection、Comparator、Iterator、List、Map、Set接口都很重要,着重看一下他们的实现类,如:ArrayList、LinkedList、HashSet、HashMap、Hashtable、TreeMap、TreeSet等。


  • java.lang.*包下的常用类


  • lang包下的基本数据类型对应的包装类(Byte、Short、Integer、Long、Double、Float、Character、Boolean);


  • 字符串相关的类String、StringBuffer、StringBuilder。


  • IO流操作,多线程及Socket


  • 掌握IO读写流相关的类,了解字节流,字符流和字符流缓冲区;


  • 掌握线程的概念,多线程的创建、启动方式,锁和同步的概念及运用;


  • 掌握Socket通信的概念,如何声明客户端服务端,如何完成双端数据通信。


  • 泛型、数据库基础(Mysql)及JDBC


  • 到了数据库前,我们可以看看泛型以及反射的一些基础案例


  • 掌握数据库的基本概念,Mysql的安装、启动与停止


  • Mysql数据库客户端的安装与使用


  • JDBC的概念,在Java中使用Mysql驱动包连接Mysql


  通过第一阶段的学习掌握Java语法和常用类,数据库入门技术相关知识。让自己对于存储,IO,这些有个大概的了解。这时候,暂时不需要花大量的精力以及篇幅去学习多线程和Socket,当然这里不是说他们不重要,而是对于现阶段的你,或许很难非常清晰的明白以及了解他们具体的作用。这里第一节忽略掉了Swing,Swing章节的内容可以不学,因为在实际的工作中基本上没有用武之地。


  2、前端基础


  • HTML基本标签、表格、表单和框架;


  • 掌握网页的基本构成;


  • 掌握HTML的基本语法;


  • 表格的作用以及合并行、合并列;


  • 表单标签的使用,提交方式get/post的区别;


  • 框架布局的使用


  • CSS样式表;


  • 掌握CSS的语法及作用,在html中的声明方式;


  • 掌握CSS布局的函数使用;


  • 掌握CSS外部样式的引入。


  • JavaScript;


  • 掌握JS的语法及作用,在HTML中的声明方式;


  • 掌握JS的运行方式;


  • 掌握JS中的变量声明、函数声明、参数传递等;


  • 掌握HTML中的标签事件使用;


  • 掌握JS中的DOM原型


  • jQuery


  • 了解如何使用jQuery,下载最新版或者老版本的jQuery.js


  • 掌握选择器、文档处理、属性、事件等语法及使用;


  • 能够灵活使用选择器查找到想要查找的元素并操作他们的属性;


  • 动态声明事件;


  • 动态创建元素。


  •BootStrap;


  •掌握BootStrap的设计理念,以及使用方式。这是我们需要接触的第一个前端框架,使用起来也很简单;


  •掌握BootStrap的栅格系统、表单、全局样式、分页工具栏、模态框等。


  •Servlet


  •掌握Java中的Web项目目录结构;


  •掌握JavaWeb项目的重要中间件Tomcat;


  •掌握Servlet中的Request和Response;


  •掌握Servlet的基本运行过程。


  •掌握Servlet的声明周期


  •动态网页技术


  •JSP在JavaWeb中的角色;


  •JSP的编码规范,以及JSPServlet;


  •JSP显示乱码的解决办法等。


  •JSP数据交互


  •JSP中如何编写Java代码,如何使用Java中的类;


  •JSP中的参数传递。


  •状态管理Session和Cookie


  •掌握Session的作用及作用域;


  •掌握Cookie的作用及作用域;


  •掌握Session及Cookie的区别,存储位置,声明周期等;


  •掌握Session及Cookie分别在JSP和Cookie中的使用


  •JSTL和EL表达式


  •使用EL表达式输出page、request、session、application作用域中的值


  •使用JSTL来做逻辑判断或循环控制


  •JNDI数据库连接池


  •JNDI的作用以及如何使用JNDI连接数据库


  •分页和文件上传


  •掌握在JSP中如何使数据达到分页的目的;


  •掌握在JSP表单中如何上传文件,Servlet如何处理上传请求(Commons-Fileupload、Commons-IO)。


  •Ajax


  •掌握Ajax的基本概念;


  •掌握jQuery中的Ajax请求;


  •掌握JSON


  •Filter、Listener;


  •掌握Filter和Listener


  •掌握Session过滤器和编码过滤器


  通过第二阶段了解前端相关的技术,如果你喜欢前端各种酷炫的效果,那么就深入学习JS、CSS。不大感兴趣的话,就浅尝辄止,并重点学习Servlet、Filter、Listener。重点学习,重点学习,重点学习。重要的话说三遍!


  主流技术应用


  • Mybatis的应用


  • Mybatis的Mapping与实体映射;


  • Mybatis中的SQL语句写法;


  • Mybatis的缓存。


  • Spring应用


  • Spring容器的作用;


  • Spring的AOP和IOC;


  • Spring托管Mybatis事务;


  • SpringMVC的应用


  • SpringMVC中的控制器注解、请求注解、参数注解、响应注解等;


  • SpringMVC中的静态资源处理;


  • SpringMVC的容器。


  • Spring+SpringMVC+Mybatis整合


  • SSM的整合使用;


  • Spring容器和SpringMVC容器


  • Redis+Mysql的查询优化设计


  • Redis的安装与连接;


  • Redis常用命令及各命令使用场景;


  • Redis存储机制;


  • Redis的持久化机制。


  • 任务处理相关


  • HttpClient模拟请求


  • Quartz定时任务


  • 常用工具


  • Excel&World导入导出


  • 短信&邮件发送


  • Maven


  • Maven的作用


  • Maven项目的创建


  • Maven的生命周期


  • Maven中央仓库及私服


  • Log4J2日志


  • FastDFS的使用


  • 什么是分布式文件系统;


  • 分布式文件系统解决的问题是什么;


  • FastDFS的使用


  通过第三阶段了解目前Java领域比较经典的三大框架,了解他们的大概功能,并加以使用。通过使用SSM开发一个简易CRM之类的项目来加强了解,理清楚框架的大致原理。搞清楚这三个框架之间的作用域以及角色。理解Redis作为内存数据库与MySQL这类关系型数据库的区别,并能使用常用的Jar包完成模拟请求,定时任务等相关系统常用功能的开发。并能够通过Maven创建SSM项目,整合Log4j或其他的日志包。了解FastDFS的作用,并理解图片上传至文件服务器和上传到tomcat之间的区别


  4、模拟实际项目开发


  • SpringBoot2.0的应用


  • 了解SpringBoot的起源及优势


  • 了解SpringBoot项目的格式以及创建方式


  • yaml语法特性


  • application配置文件及静态资源处理


  • Thymeleaf模板引擎


  • SpringBoot核心之WebMVCConfigurer


  • Spring自定义错误处理


  • SpringBoot日志引用及切换


  • SpringBoot数据源和Mybatis


  • SpringBoot-redis应用


  • Struts2应用(了解即可)


  • 通过学习Struts,了解什么是MVC;


  • 掌握Struts是如何完成界面控制的;


  • 掌握Struts的参数接收及传递;


  • 掌握Struts的拦截器;


  • 掌握Struts的OGNL和标签使用。


  • Hibernate应用(了解即可)


  • Hibernate在项目中的作用及优势;


  • Hibernate中的hbm与实体类之间的关系;


  • 什么是HQL,什么是关系映射(一对一,多对一,多对多);


  • 了解Hibernate的事务、懒加载和缓存。


  • Redis哨兵模式的搭建


  • Linux操作系统


  • Linux中的常用命令;


  • Linux下的JDK、tomcat安装;


  • Linux下的项目部署方式。


  • Nginx的使用


  • Nginx的作用;


  • 反向代理和正向代理分别是什么;


  • Nginx实现tomcat代理。


  • Mysql集群方案


  • Mysql集群的常用方案有哪些;


  • Mycat中间件的概念


  • Mycat的使用准则;


  • 了解数据库的主从复制;


  • 了解数据库的主备切换;


  • 为什么需要主从和主备。


  • Solr入门


  • 什么是全文检索;


  • Solr做搜索的优势是什么;


  • Lucene、ElasticSearch、Solr之间的关系;


  • Solr的安装与使用。


  • JVM


  • 回顾所有所学习到的知识,联系所有框架中的自定义容器、上下文来理解变量及对象的存储


  • 理解垃圾回收是怎么一回事


  • 理解集中回收算法


  • 完全理解整个堆栈模型


  通过第四个阶段了解更简单易用的SpringBoot,微服务应用和存储集群相关的概念及实现方案。让自己具备一个设计高可用,可扩展的项目框架视野。这样对于后面继续专研SpringCloud/Dubbo、zookeeper这些RPC相关的框架有很大的好处。


  最后,一定要动手,一定要动手,一定要动手。把代码敲烂,你才会有收获,不要被视频诱导,敲一遍之后误认为你自己会了,如果第二天你起来时已经忘了昨天学习了什么的话,那说明你还是没学会,好好加油吧。


  


热门课程推荐

全部班型支持免费试学

动力节点在线报名表(此信息已加密,请放心填写)

返回顶部