JAVA学习路线

741 阅读14分钟

参考一

前端部分:

   1)HTML:网页的核心语言,构成网页的基础

   2)CSS:使网页更加丰富多彩灿烂的利器

   3)JavaScript:使网页动起来的根本,加强了网页和用户之间的交互

   4)HTML DOM:换一种更加形象化的角度来看待网页,让我们更加方便的控制网页

   5)HTML BOM:与浏览器交互不可或缺的工具

   6)JavaScript库,主要是:jQuery及其插件、YUI及其插件,使编写网页更加的方便快捷和健壮的强大工具

   7)AJAX:异步提交,增强了用户使用网页的良好交互体验

   8)JSON: 比 XML 更小、更快,更易解析的数据传输工具

   9)FLEX:提供丰富多彩的动画效果

   10)普元工作流:更加清晰明了的帮助用户处理业务流程上面的工作

   11)JSP:Servlet的展示层,使网页逻辑与网页设计的显示分离

   12)JSTL:加强和简化了JSP页面的开发

   13)EL:使JSP页面写起来更加简单

后台部分:

   1)JAVA语言编程基础部分:内容丰富是Java知识体系结构的核心和基础

   2)JDBC:提供了一种基准,据此可以构建更高级的工具和接口,使Java开发人员能够编写数据库应用程序

   3)JavaMail:用于电子邮件的相关的编程工作

   4)JUnit:单元测试,整个变成工作测试的地位始终非常重要

   5)Log4j:使我们能够更加细致地控制日志的生成过程

   6)Servlet:JavaWeb的核心

   7)Struts2:JavaWeb编程中明星级的框架,优点多功能强使编程工作更简单,主要用于控制跳转

   8)Spring:JavaWeb编程中明星级的框架,同样优点多功能强使编程工作更简单,主要用于管理对象

   9)iBatis:JavaWeb编程中明星级的框架,同样也是优点多功能强使编程工作更简单,主要用于程序和数据库之间的交互

   10)SQL:与数据库交互式编程的必备工具

版本控制:

  1)SVN:版本控制,方便团队协同工作
  2)git:版本控制,方便团队协同工作

WEB服务器:

  1)Tomcat:优秀免费的中小型WEB服务器

  2)Weblogic:功能很强大的WEB服务器

  3)Jetty

开发工具:

  1)Eclipse:开源强大的Java编程工具

  2)MyEclipse:在eclipse 基础上加上自己的插件开发而成的功能强大的企业级集成开发环境

   3)Idea

数据库:

 1)Oracle:数据库业界老大,这个常用一点当然,也仅仅是常用一些常用的功能而已,需要加强

 2)MySQL:最好的关系型数据库之一

 3)SqlServer:最好的关系型数据库之一

数据库客户端:

 1)Toad:非常棒的数据库客户端软件

操作系统:

 1)Windows

 2)Linux

远程登录的会话工具:

1)SSH:一直在用,非常不错

其他:

  各种种类和版本的浏览器(推荐使用FireFox)、office办公软件系列、各种文本编辑器(推荐Sublime)、各种阅读器等等

1:Java的知识体系结构

2:JavaWeb开发的基本学习路线图

3:JavaWeb开发的成长路线图

参考二

  • Java基础课程内容涉及:Java开发介绍、Java数组、Java面向对象、常用基础类、集合、IO流、多线程、异常、网络、反射。

第一部分:Java开发介绍

  1. DOS常用命令
  2. JVM、JRE、JDK之间的关系
  3. Java开发环境的搭建:安装JDK,配置环境变量
  4. Java入门程序(Java的开发流程)
  5. Java的注释,标识符、标识符的命名规范
  6. Java基本数据类型
  7. 变量和常量的定义及初始化
  8. Java的运算符
  9. 运算符的优先级
  10. Java分支语句之if...else
  11. 循环的嵌套
  12. 方法的定义
  13. 方法的形参和实参
  14. 方法的压栈
  15. 方法的递归调用

第二部分:Java数组

  1. Java 数组的定义
  2. Java 数组的声明
  3. 数组的优势与局限
  4. 数组的动态初始化
  5. 数组的存储特点(堆和栈)
  6. 数组的遍历访问(普通循环,增强for循环)
  7. 数组元素的顺序查找
  8. 数组元素的二分法查找
  9. 数组元素的选择排序
  10. 数组元素的冒泡法排序
  11. Arrays工具类的使用
  12. 二维数组的介绍
  13. 二维数组的声明与初始化
  14. 二维数组的遍历
  15. 二维数组的使用

第三部分:Java面向对象

  1. 面向对象设计思想
  2. 面向对象的分析与设计
  3. Java与面向对象
  4. 类中成员变量的定义与意义
  5. 构造方法的定义和调用
  6. 面向对象的封装特性
  7. 局部变量和成员变量的作用域问题
  8. 静态属性、静态方法、静态代码块
  9. 面向对象的继承特性
  10. 继承中构造方法的细节
  11. 面向对象的多态特性
  12. 抽象方法与抽象类
  13. 接口的介绍
  14. 通过内部类制作性能检测工具
  15. Java的内存分析

第四部分:常用基础类

  1. 枚举类型介绍
  2. 枚举的定义
  3. 结合switch-case使用枚举
  4. String字符串
  5. 字符串缓冲区StringBuffer和StringBuilder
  6. 字符串与缓冲区的区别
  7. 基本类型的包装类型
  8. Date类的使用
  9. SimpleDateFormat类的使用
  10. Math类的使用
  11. Random类的使用
  12. Runtime类的使用
  13. System 类的使用
  14. Calendar类的使用
  15. Java8新特性

第五部分:集合

  1. 集合的概念和作用
  2. 集合和数组的区别
  3. 集合框架体系介绍
  4. 集合框架之Collection接口
  5. 泛型的使用
  6. ArrayList和LinkedList的方法使用
  7. ArrayList和LinkedList各自的工作原理分析原理分析
  8. Vector和Stack使用介绍
  9. 使用多种方式遍历集合
  10. 迭代器的使用和工作原理
  11. HashSet和LinkedHashSet各自的工作原理分析
  12. 集合框架之Map接口
  13. TreeMap的方法使用和排序方式
  14. 分析Set和Map之间的区别与联系
  15. Collections工具类的使用

第六部分:IO流

  1. File类的作用
  2. File类中常用方法的使用介绍
  3. 使用File类操作文件和文件夹
  4. 相对路径和绝对路径的介绍
  5. IO流的概念和工作原理
  6. IO流的分类
  7. 文件流的使用
  8. 转换流的使用
  9. 缓冲流的使用
  10. 对象流的使用
  11. 内存流的使用
  12. 使用不同的流实现文件内容的拷贝
  13. RandomAccessFile类的使用
  14. Properties类的使用
  15. 装饰者设计模式

第七部分:多线程

  1. 进程和线程的介绍
  2. 进程和线程之间的区别与联系
  3. 线程实现方式之继承自Thread类
  4. 线程实现方式之实现Runnable接口
  5. 线程实现方式之线程池
  6. 线程的生命周期
  7. 线程中常用方法的使用
  8. 多线程中的临界资源问题分析
  9. 解决临界资源问题之同步代码块
  10. 解决临界资源问题之同步方法
  11. 解决临界资源问题之ReentrantLock
  12. 多线程讲解和理解
  13. 多线程在单例中的应用
  14. 死锁介绍以及案例演示
  15. 生产者与消费者设计模式

第八部分:异常

  1. 异常的概念
  2. 异常的分类
  3. 异常的理解
  4. 常见异常介绍
  5. 运行时异常
  6. 编译时异常
  7. 运行和编译异常区别
  8. 异常的处理方式之捕获异常
  9. 异常的处理方式之抛出异常
  10. 异常的处理方式之断点调试
  11. 断点调试之引导运行步骤
  12. 自定义异常
  13. 异常关键字处理
  14. 关键字执行流程
  15. 异常总结

第九部分:网络

  1. 计算机网络和网络编程
  2. 网络编程与网页编程的区别
  3. IP地址和端口号的介绍
  4. 网络通信协议的介绍
  5. InetAddress类的方法使用
  6. Socket通信模型的介绍
  7. 使用UDP实现数据的发送和接收
  8. 使用TCP实现数据的发送和接收
  9. 使用TCP实现文件的上传和下载
  10. 使用TCP实现多人聊天
  11. URL和URLConnection使用介绍
  12. URLEncoder和URLDecoder的使用介绍
  13. 基于HTTP协议访问网络资源
  14. Json解析
  15. 基于HTTP协议实现网络文件的下载

第十部分:反射

  1. 反射机制的概念
  2. 反射机制的作用
  3. 反射机制的理解
  4. Class类的使用
  5. Class文件获取的三种方式
  6. 获取Constructor对象
  7. 获取私有Constructor对象
  8. 获取Method对象
  9. 获取私有Method对象
  10. Constructor的使用
  11. Method类的使用
  12. Field类的使用
  13. Modifier类的介绍
  14. 反射使用练习
  15. 反射机制在工厂设计模式中的应用
  • Java框架课程内容涉及:Maven、Hibernate、Spring、Spring MVC、MyBatis、WebService、SVN、Activiti。

第一部分:Maven

  1. Maven环境搭建
  2. Maven构建项目
  3. Maven本地仓库配置
  4. Maven中央仓库配置
  5. Maven基本概念
  6. Maven基本命令介绍
  7. Maven于Eclipse整合
  8. Maven于Idea整合
  9. Maven创建web工程
  10. pom.xml、依赖管理
  11. 坐标、依赖、生命周期等
  12. Eclipse下的Maven使用
  13. Maven中 继承、聚合
  14. Maven构建SSH/SSM应用
  15. 自动部署、持续集成、持续部署

第二部分:Hibernate

  1. Hibernate框架介绍
  2. Hibernate于其他框架和DBUtil工具类对比
  3. ORM思想
  4. Hibernate5与JPA关系介绍
  5. Hibernate.cfg.xml配置
  6. hbm.xml映射文件详解
  7. 主键生成策略 PO对象三种状态分析与切换
  8. Hibernate5一级缓存分析与测试
  9. Hibernate5高级映射技术
  10. 一对多映射
  11. 多对多映射
  12. Hibernate5多表联合查询
  13. Hibernate5延迟加载
  14. Hibernate5加载策略
  15. 二级缓存

第三部分:Spring

  1. 框架原理介绍
  2. 框架环境搭建
  3. 快速入门
  4. 创建Bean的方式及实现原理
  5. Bean种类
  6. Bean生命周期
  7. Bean的作用域
  8. Bean的注值方式
  9. SpEL
  10. 整合Junit测试
  11. Web项目集成Spring
  12. 注解装配Bean
  13. AOP思想、原理解剖
  14. 传统方式实现AOP开发
  15. AspectJ介绍及实现AOP开发

第四部分:Spring MVC

  1. Spring MVC 概述
  2. 使用 @RequestMapping映射请求
  3. 请求处理方法签名概述
  4. 处理方法签名详细说明
  5. 使用 HttpMessageConverter
  6. 处理模型数据
  7. 数据绑定流程剖析
  8. 数据格式化
  9. 数据校验
  10. 视图和视图解析器
  11. 处理方法的数据绑定
  12. 视图和视图解析器
  13. 文件上传下载
  14. JSON处理
  15. 拦截器

第五部分:MyBatis

  1. MyBatis数据框架介绍
  2. MyBatis对比Hibernate框架
  3. MyBatis配置、查询数据
  4. MyBatis全局配置文件
  5. MyBatis全局配置文件元素详细介绍
  6. Mapper映射文件
  7. MyBatis两种开发方式
  8. MyBatis中别名配置
  9. MyBatis # 和 $ 拼接参数区别
  10. 关联查询,动态sql
  11. MyBatis缓存机制、整合ehcache
  12. MyBatis二级缓存处理
  13. MyBatis、Spring、SpringMVC整合
  14. 分页插件
  15. MyBatis逆向工程

第六部分:WebService

  1. WebService简介
  2. WebService主流框架
  3. SOAP协议
  4. WSDL讲解
  5. JAX-WS
  6. WebService与Spring整合
  7. JAXB
  8. JAX-RS
  9. WebService各种调用方式
  10. cxf的介绍
  11. cxf+jaxws基本
  12. cxf+jaxws+spring
  13. cxf+JAX-RS基本
  14. cxf+JAX-RS+spring
  15. 综合案例

第七部分:SVN

  1. SVN简介
  2. SVN和Git对比
  3. SVN服务器搭建
  4. SVN创建仓库
  5. SVN创建用户以及分配权限
  6. SVN签出、提交、更新
  7. Eclipse整合svn插件
  8. Idea整合svn插件
  9. 使用SVN更新提交
  10. SVN仓库分析
  11. SVN协同修改&冲突解决
  12. SVN代码整合注意事项
  13. SVN权限管理
  14. SVN数据回滚
  15. TortoiseSVN

第八部分:Activiti

  1. 工作流介绍
  2. 工作流引擎
  3. 工作流使用步骤
  4. BPMN2.0规范
  5. Activiti5框架表结构
  6. Activiti5核心组件&服务接口
  7. Activiti5插件安装&整合Spring
  8. 流程定义
  9. 流程实例、任务、历史
  10. 任务领取、流程变量
  11. 排他网关、并行网关
  12. 流程事件
  13. 流程控制
  14. 监听器
  15. 简单整合shiro
  • Java + 云数据课程主要涉及的内容包含:Linux、FastDFS、MySQL优化、Nginx反向代理、Quartz 作业调度、Redis 高性能(Key-Value)数据库、Shiro 安全(权限)框架、Lucene&Solr全文检索、Zookeeper 分布式系统、MyCAT 大数据集群、Dubbo实现分布式架构、ActiveMQ 消息队列、分布式事务和单点登录、分布式框架原理(采用视频资料教学)、基于SpringMVC的集成单元测试MockMVC、SpringBoot 快速构建JavaEE项目。
  • Java + 云数据

第一部分:Linux版本

1.Linux简介和安装 2.Linux和Windows的区别 3.Linux远程登录 4.Linux常用命令 5.Linux文件管理 6.Linux用户管理 7.Linux用户组管理 8.Linux磁盘管理 9.Linux系统管理 10.Linux常用文件 11.Linux JDK安装 12.Linux Tomcat安装 13.Linux MySQL安装 2

第二部分:FastDFS

1.FastDFS简介 2.FastDFS单节点安装 3.FastDFS Tracker和Storage节点操作 4.FastDFS 配置Tracker服务器 5.FastDFS 配置Storage服务器 6.FastDFS JavaClient端 文件上传 7.FastDFS JavaClient端 文件下载 3

第三部分:MySQL优化

1.优化数据访问 2.重构查询的方式 3.查询缓存 4.切分查询 5.MySQL索引 6.MySQL锁 7.MySQL执行计划 8.MySQL存储引擎 9.Schema与数据类型优化 4

第四部分:Nginx反向代理

1.Nginx反向代理介绍 2.Nginx 下载和安装 3.Nginx 编译和启动、访问 4.在Linux下搭建Nginx集群 5.在Windows搭建Nginx集群 6.解决Session共享问题 5

第五部分:Quartz 作业调度

1.Quartz作业调度简介 2.Quartz作业调度执行以及持久性 3.Quartz基本使用 4.Quartz核心类讲解 5.Quartz Trigger 触发器 6.Quartz Job&JobDetail 7.Quartz Calendars日历讲解 8.JobListener监听器和TriggerListener监听器 9.Spring整合Quartz 6

第六部分:Redis 高性能(Key-Value)数据库

1.NoSQL 发展史简介 2.Redis 简介 3.Redis 安装以及调试 4.Redis 常用指令 5.Redis 高级使用(主从复制、哨兵模式、持久化机制) 6.Jedis的基本使用 7.SSM框架基于Redis实现缓存 8.Redis 连接单机版 9.Redis 连接单机版使用连接池 10.封装和整合Spring 11.Redis 集群搭建

第七部分:Shiro 安全(权限)框架

1.Shiro功能简介 2.Shiro框架介绍 3.ShiroFilter工作原理 4.Shiro 身份认证 5.Shiro Realm以及Authenticator 6.Shiro拦截器和Permissions(授权) 7.Shiro 自定义拦截器 8.Shiro Session会话 9.Shiro RememberMe功能 10.SSM集成Shiro综合权限菜单

第八部分:Lucene&Solr全文检索

1.Lucene 搜索引擎介绍 2.Lucene 中文分词器配置 3.Lucene 索引的维护包括创建、删除、修改操作 4.Lucene Query 各种查询方法 5.Lucene 高亮显示 6.Lucene Facet分面检索 7.Solr简介 8.Solr 安装和配置 9.Solr 索引库管理 10.什么是SolrCloud 11.Solr集群的系统架构 12.将搜索功能切换到集群版

第九部分:Zookeeper 分布式系统

1.Zookeeper 简介 2.Zookeeper 特点 3.Zookeeper 安装和配置 4.Zookeeper数据类型 5.Zookeeper服务中操作 6.Zookeeper Wacth触发器 7.Zookeeper分布式应用

第十部分:MyCAT 大数据集群

1.MyCat 简介 2.MyCat的下载和安装 3.MyCat分片配置 4.MyCat分片使用和测试 5.MyCat读写分离 6.MyCat 实现从MySQL主从复制

第十一部分:Dubbo实现分布式架构

1.Dubbo简介 2.单一应用框架 3.垂直应用框架 4.分布式应用框架 5.流动计算机架构 6.Dubbo 能做什么 7.Dubbo 实现原理 8.Dubbo 分布式集群模型 9.Dubbo管理控制台安装 10.Dubbo 集成 SSM

第十二部分:ActiveMQ 消息队列

1.ActiveMQ简介 2.JMS简介 3.MQ 消息中间件 4.ActiveMQ 安装和使用 5.ActiveMQ 消息过滤 6.ActiveMQ 消息发布和订阅模式 7.ActiveMQ消息持久化 8.ActiveMQ与Spring 整合

第十三部分:分布式事务和单点登录

1.阶段提交协议讲解 2.使用消息队列来避免分布式事务 3.如何可靠保存凭证 4.业务与消息解耦方式 5.如何解决消息重复投递的问题 6.什么是单点登录 7.单点登录技术的实现机制

第十四部分:分布式框架原理(采用视频资料教学)

1.传统垂直mvc项目 2.垂直架构的缺点 3.RPC架构 4.RPC架构的核心技术点 5.RPC架构的问题 6.SOA服务化架构 7.框架设计原理 8.框架性能、可靠性、功能 9.协议栈(通信模型、协议消息定义、安全性设计) 10.服务路由 11.集群容错

第十五部分:基于SpringMVC的集成单元测试MockMVC

1.Mock测试框架的介绍 2.SpringMVC Mock 配置的步骤 3.基于SpringMVC单元测试实战案例 4.基于SpringMVC+JPA单元测试实战案例 第十六部分:SpringBoot 快速构建JavaEE项目 1.基于SpringBoot 的thymeleaf 模板引擎 2.基于SpringBoot 多模块实战开发 3.基于SpringBoot 文件上传 4.基于SpringBoot Data Solr搜索引擎开发 5.基于SpringBoot Email邮件发送 6.基于SpringBoot 的Redis实战开发 7.基于SpringBoot 的WebSocket实战开发 8.基于SpringBoot 的ActiveMQ消息队列