学过了Java基础教程,相信你一定对Java已经有了一定的了解,度过了初入Java世界的难关,经历了最难的开始,供你你成功进阶,万事开头难,熬过了开头,成功还会远吗?分享下Java学习路线图,为你助攻!
1.1 Java学习总体方向
对于刚学习Java的同学,了解Java学习的大致结构。当然你能在Orace Java的主页上看到还有如Java FX、Java DB这样的技术。但是既然要和市场接轨,必然要有所取舍。
Java SE是我们Java入门的开端,这块内容也就是大家所熟悉的坦克大战、聊天软件、五子棋这些桌面级项目所组成的。学完了Java SE部分,接下来就该选择方向了。
但这里有亮点需要提出:
往分布式方向并不是一定要经过Java EE阶段,但是,学习Java EE对后续分布式的开发有莫大的好处。
Java ME虽然还在Orace官网上屹立,但就市场来看,它的地位已经明显不如adroid高了。所以从目前来看,没有必要学习Java ME。
1.2 Java SE中应该关注的内容
在这一节中,将列出Java SE的学习中应该关注的方面,以及这些方面里主要涉及哪些核心内容。大家可以根据自己的学习情况,对照这些条目,看看有没有缺漏的内容。在之前提到过如坦克大战这样的项目,这些确实能很好的涵盖了大部分Java SE的内容,所以必要的项目是很关键的。
Java SE大致可分为以下几块内容:
对象导论:如何用面向对象的思路来开发
深入JVM:Java运行机制以及JVM原理
面向对象的特征:封装、继承、抽象、多态
数组和容器:容器的线程安全问题
I/O和IO:IO工作原理和应用
并发编程:cocurret包
网络编程:TCP/IP+BIO/IO UDP/IP+BIO/IO
JDBC框架和反射:JDI、连接池、aotatio等
其他:正则表达式、字符串等
在这里我还想多提一点,关于Java SE学到什么深度才合适。其实对于后续学习Java EE或者是Adroid来说,Java SE你只要学会皮毛就足够应付了,当然这里的皮毛是要求你熟练Java语法结构和基本CRUD操作。
1.3 Java EE中该学点什么
Java EE很杂,但是也很容易学,因为你做几个网站大概就能把所有知识点串联起来。所以Java EE方向说好听点儿的叫企业级应用开发,说难听点儿的其实就是做网站。当然并不局限于做网站。
对于Java EE方向的学习,重点在于能够熟练的运用各种框架,以及掌握各种框架构成的核心思想。至于学什么框架,用什么应用服务器,在学习的时候可以采用容易配置的,所有的同类服务都是类似的,精通了一个,相似的学习就很快了。
下面来具体的看各个模块应该学点儿什么:
序列化:XM、JSO与Java之间的序列化和反序列化
ORM:推荐学习hiberate
JSP/Servet:可以顺带着把JS学习了
sprig:IOC、AOP、Sprig MVC
MVC:推荐学习Struts
Web Service:JDK自带web service、CXF等框架
SOA:了解ESB、MQ等企业级应用架构。
EJB:主要了解思路。可顺带着学习JBOSS
其他:会使用JMS。了解JTA。
还是一点,Java EE方向的学习主要是会熟练运用即可。大点儿的企业都会有自己的框架,技术含量大同小异。会用即可。当然到了这个阶段设计模式的学习也必不可少,设计模式可以穿插于各个框架中进行学习。
学无止境,要想在计算机里走的顺利点儿,你真的需要不断的学习。不断更新自己的数据库,让自己变得无法取代。
———————————————————分割线————————————————————
JAVA视频教程汇总
2019Java视频教程:JavaEE初级
Java开发入门
本课程适合完全小白的你学习,内容从计算机基本概念,DOS命令开始,为你入门编程语言扫盲,什么是程序,如何配置JAVA开发环境,JAVA编程的过程是怎样的,JAVA有什么物特点,程序是如何运行的,这些你都可以在这里得到答案。
Java编程基础
本课程介绍JAVA编程的基础语法,共分为10个知识点,我们将学习变量,基本数据类型,进制,转义字符,运算符,分支语句和循环语句等,以达到训练基础语法和逻辑能力的目的,你知道如何不通过第三个变量来交换两个数吗?答案在这里。
方法与数组
本课程介绍方法(也可以称为函数)的使用,用方法来组织代码,最基本的好处就是达到代码复用的目的,不仅如此,方法更有不可告人的目的,接着介绍数组的用法和特点,结合常用的算法介绍,这个最基本的线性数据结构蕴含着无限的能量。
面向对象(上)
本课程介绍JAVA面向对象的基本概念,我们将从14个知识点来分别介绍类与对象,封装性,对象内存结构分析,static关键字,到第一个设计模式,对于没有接触过面向对象的你来说,你要准备好会晕车了,想要顺利到站,需要你坚持边学边练哦。
面向对象(下)
本课程继续面向对象,共有21个知识点,详细介绍了继承,多态,内部类,5个设计模式的应用,链表数据结构的纯手工代码实现,让你深入浅出,彻底揭开面向对象的神秘面纱,是修炼JAVA基本功的必备秘籍。
2019Java视频教程:JavaEE中级
Eclipse与异常处理
本课程内容介绍Eclipse集成开发环境的基本使用,掌握Eclipse在项目开发中使用率超过90%,是开发的必备利器;JAVA的异常处理无处不在,本章介绍异常处理的用法与异常发生的原理与处理过程,结合JDK1.7的新特性,让我们的异常处理代码更加优雅,最后介绍Eclipse的debug技术,为开发复杂应用调试做好充分准备。
常用类库
本课程内容介绍常用类库API的使用及原理分析,数据结构二叉树实现,JDK1.8 Lambda表达式的语法与应用,共15节视频,通过本章内容的学习,达到熟练使用这些 API,恭喜你,你已经步入 JAVA 核心技术的高级开发阶段了。
文件与IO
本课程内容介绍文件基本操作,IO流体系中的各种流的特点与用法,共分为25节详细介绍了普通流的应用与源码分析,NIO的原理与使用,结合装饰者设计模式的实现来更好的理解流的体系结构,本章节的涉及的类多,学习本章内容需要仔细总结各个流的特点与用法,结合API的查阅,多做练习,一进一出,你会懂的。
集合
本章课程内容讲解JAVA中的集合框架体系,包括Collection接口中的List接口和Set接口,Map接口的实现类使用及原理源码分析,深入浅出的讲解内部实现细节,让你知其然也知其所以然,本章内容还加入JDK1.8的新特性,比如Stream、四大函数式编程接口等,通过迭代器设计模式的介绍,来理解Iterator的实现模式,最后讲解项目开发中常用的第三方框架Guava的使用来提高项目开发中效率,集合的难点,在于掌握底层数据结构的原理,在这里,你都可以一一收获。
多线程与并发
本章课程内容我们开始引入 当今 JAVA 开发最好的IntellijIDEA开发环境,然后介绍进程与多线程的基本概念,线程的实现方式与特点深入理解,最后配合一个经典的生产者与消费者案例,来讲解多线程之间的任务协作,通过本章节内容的学习,你可以充分掌握多线程开发的核心思想,实话告诉你,到你研究 JavaEE框架源码的时候,它会派上用场。
网络编程
本章课程内容从介绍网络编程基本概念,TCP协议,UDP协议的区别,通过演示服务器与客户端之间的通信,到多客户端之间的通信来实现一个简易版的聊天程序,网络下载,最后介绍Apache开源项目网络通信框架MINA。掌握本章内容的目的是理解网络编程基础原理,为后续WEB开发中的网络操作提供底层知识支持。
反射与内省
本章课程内容从介绍反射的基本概念和API使用入手,结合动态代理模式介绍来使用反射,JavaBean的概念介绍与Apache开源工具BeanUtils的使用,Introspector相关API与案例演示,手把手教你实现一个简易版的AOP框架,为JAVAEE的后续课程打好充分的基础理论,最后,结合以上章节的知识,优化单例设计模式。
泛型
本章课程内容介绍泛型的使用,自定义泛型类、泛型接口和泛型方法,通配符的使用,以及通配符的上限下限,完成本章节的学习,可以掌握泛型在开发中的运用。
正则表达式
本章课程内容介绍正则表达式的语法与示例演示,了解正则表达式可以为后续WEB开发中使用JavaScript的正则提供帮助。
枚举
本章课程内容介绍枚举的使用,枚举是JDK1.5后新增的新特性,使用枚举可以为使用者提供固定的选择项,以避免调用者输入非法选项值,但使用枚举比使用普通常量会消耗更多的性能,在实际使用场景时需要考虑。
注解
本章课程内容介绍注解的使用,注解Annotation是JDK1.5后新增的新特性,注解在后续EE开发的框架或Android开发的组件中使用很多,比较常见的是spring2.5开始的基于注解配置通过注解,为我们在代码中添加信息提供了一种形式化的方法,学完本章内容让你对如何使用注解及定义注解有比较清晰的了解。
XML与JSON
本章课程内容介绍XML文件的作用及应用场景,介绍四种XML的解析方式:SAX/DOM/JDOM/DOM4J以及比较分析,第三方组件xStream的使用,JSON数据的解析与生成,GSON组件的使用等,通过本章节的学习,掌握网络数据传输的概念,在未来EE企业级开发中,XML与JSON的数据交换是非常常见的。
GUI事件处理
本章课程内容简单介绍了GUI编程,由于JAVA中的GUI几乎在企业级开发中无用武之地,所以不作为重点内容,本章的核心内容是介绍基于GUI编程中的事件处理机制,以及接口回调的概念,结合观察者设计模式的讲解,来掌握事件的概念及使用,该知识点在Android开发中使用甚广,在WEB开发中让我们更好的理解底层框架代码。
项目实战
通过本项目实战课程,把JAVA基本部分的内容融会贯通,体验项目开发的基本流程,谁说用基础写不了项目,主要看怎么写,跟谁写。
2019Java视频教程:JavaEE中高级
Mybatis框架实战教程
本门课程围绕MyBatis的基本使用、动态sql、高级查询等知识点讲解了如何使用MyBatis开发应用程序。同时也介绍了如何使用逆向工程创建MyBatis应用程序。通过入门程序的演示对MyBatis作了简要的介绍,深入学习MyBatis的参数传递、排序查询等功能,介绍了动态sql语句,完成复杂的sql查询;介绍了如何使用逆向工程提高开发效率;介绍了MyBatis的缓存机制;介绍了嵌套查询、嵌套结果以及扩展结果查询的方式;介绍了MyBatis中构造方法和鉴别器的使用以及如何在MyBatis中配置延迟加载。
Spring框架实战
这门课程主要讲Spring的核心概念和基本使用。涉及IoC、DI、AOP、JdbcTemplate和事务管理等核心概念。同时讲解了xml和注解两种方式使用Spring的示例。通过Spring的入门程序介绍了Spring的 IoC 和 DI 的概念,介绍了Spring的基本模块。
SpringMVC框架实战
这门课程主要介绍了目前最流行的一个MVC框架-SpringMVC。主要介绍了SpringMVC中注解的使用、数据的传输、类型转换、json处理、异常处理、拦截器和图片上传等功能。同时也介绍了如何在SpringMVC中处理json数据。最后通过一个项目介绍了如何将Spring、SpringMVC和MyBatis整合起来。
容灾项目实战
这个项目是一个框架阶段的总结项目。主要用到了Spring、SpringMVC、Hibernate三大框架搭建项目。同时使用了Shiro完成项目中的用户认证和用户权限处理。使用了quartz实现了定时任务。整合了druid的监控中心。使用aop开发了日志系统。前端框架使用vue实现。
2019Java视频教程:JavaEE高级
分布式基础知识点
本章主要讲解Linux常见命令,Jdktomcat配置,maven私服,阿里云配置redis和mysql等基础知识点。
互联网金融p2p
本章主要讲解p2p项目的搭建,从分布式环境搭建到项目整合,从solr搭建到移动端交互加密,进行了系统完整的介绍。完整的P2P项目体系,有相关的文档介绍,结合分布式体系进行讲解,对于并发时候的资金安全保障进行相关优化。
MySQL主从分离和优化
本套视频包括了分布式中各种环境如何搭建:Linux 系统CentOS7的安装、Redis单机版的安装等。
Spring Boot实战
本视频教程包括了SpringBoot的基本使用及SpringBoot如何和各项技术整合。微服务和Spring Cloud实战:本套课程涉及Eureka、Feign、Ribbon、Hystrix、Turbine、Zuul、Configserver等知识点。
Java编程工具
Eclipse:一个开放源代码的、基于Java的可扩展开发平台 。
NetBeans:开放源码的Java集成开发环境,适用于各种客户机和Web应用。
IntelliJ IDEA:在代码自动提示、代码分析等方面的具有很好的功能。
MyEclipse:由Genuitec公司开发的一款商业化软件,是应用比较广泛的Java应用程序集成开发环境 。
EditPlus:如果正确配置Java的编译器“Javac”以及解释器“Java”后,可直接使用EditPlus编译执行Java程序 。