Java学习路线从入门到入土
Java学习路线从入门到入土
<a href="#_2">简介</a> <a href="#Java_6">Java基础课程</a>
<a href="#_12">第一阶段</a>
<a href="#Java_14">第一部分:Java开发介绍</a> <a href="#Java_52">第二部分:Java数组</a> <a href="#Java_70">第三部分:Java面向对象</a> <a href="#_88">第四部分:常用基础类</a> <a href="#_106">第五部分:集合</a> <a href="#IO_124">第六部分:IO流</a> <a href="#_142">第七部分:多线程</a> <a href="#_160">第八部分:异常</a> <a href="#_178">第九部分:网络</a> <a href="#_196">第十部分:反射</a> <a href="#_228">第十一部分:数据结构与算法</a> <a href="#JavaWeb_237">JavaWeb课程</a>
<a href="#_239">第二阶段</a>
<a href="#_241">内容</a> <a href="#HTML5_254">第一部分:HTML5</a> <a href="#CSS3_272">第二部分:CSS3</a> <a href="#JavaScript_290">第三部分:JavaScript</a> <a href="#MySQL_308">第四部分:MySQL使用</a> <a href="#JDBC_326">第五部分:JDBC连接池</a> <a href="#Servlet_344">第六部分:Servlet</a> <a href="#JSP__362">第七部分:JSP (现阶段使用较少)</a> <a href="#AJAX_380">第八部分:AJAX</a> <a href="#jQuery_398">第九部分:jQuery</a> <a href="#Bootstrap_416">第十部分:Bootstrap</a> <a href="#Java_452">Java框架课程</a>
<a href="#_454">第三阶段</a>
<a href="#Java_456">Java框架课程内容</a> <a href="#Maven_467">第一部分:Maven</a> <a href="#Hibernate__485">第二部分:~~Hibernate~~ (国外使用较多)</a> <a href="#Spring_504">第三部分:Spring</a> <a href="#Spring_MVC_521">第四部分:Spring MVC</a> <a href="#MyBatis_539">第五部分:MyBatis(国内使用较多)</a> <a href="#_Git_558">* 第七部分:Git</a> <a href="#Java___567">Java + 云数据课程</a>
<a href="#_569">第四阶段</a>
<a href="#Java___571">Java + 云数据课程主要涉及的内容:</a> <a href="#Linux_587">第一部分:Linux版本</a> <a href="#MySQL_604">第三部分:MySQL优化</a> <a href="#Nginx_616">第四部分:Nginx反向代理</a> <a href="#Quartz__625">第五部分:Quartz 作业调度</a> <a href="#Redis_KeyValue_637">第六部分:Redis 高性能(Key-Value)数据库</a> <a href="#Shiro__651">第七部分:Shiro 安全(权限)框架</a> <a href="#LuceneSolr__ElasticSearch_664">第八部分:~~Lucene&Solr全文检索~~ (建议使用ElasticSearch)</a> <a href="#Zookeeper__679">第九部分:Zookeeper 分布式系统</a> <a href="#Dubbo_690">第十一部分:Dubbo实现分布式架构</a> <a href="#ActiveMQ__RabbitMQKafka_703">第十二部分:ActiveMQ 消息队列 (RabbitMQ、Kafka)</a> <a href="#_714">第十三部分:分布式事务和单点登录</a> <a href="#_724">第十四部分:分布式框架原理(采用视频资料教学)</a> <a href="#SpringBoot_JavaEE_740">第十六部分:SpringBoot 快速构建JavaEE项目</a> <a href="#SpringCloud_751">第十七部分:SpringCloud微服务</a> <a href="#_752">第十八部分:大数据...</a>
简介
一门永不过时的编程语言——Java
Java基础课程
Java基础课程:Java开发介绍、Java数组、Java面向对象、常用基础类、集合、IO流、多线程、异常、网络、反射。
END
第一阶段
第一部分:Java开发介绍
DOS常用命令
JVM、JRE、JDK之间的关系
Java开发环境的搭建:安装JDK,配置环境变量
Java入门程序(Java的开发流程)
Java的注释,标识符、标识符的命名规范
Java基本数据类型
变量和常量的定义及初始化
Java的运算符
运算符的优先级
Java分支语句之if…else
循环的嵌套
方法的定义
方法的形参和实参
方法的压栈
方法的递归调用
第二部分:Java数组
Java 数组的定义 Java 数组的声明 数组的优势与局限 数组的动态初始化 数组的存储特点(堆和栈) 数组的遍历访问(普通循环,增强for循环) 数组元素的顺序查找 数组元素的二分法查找 数组元素的选择排序 数组元素的冒泡法排序 Arrays工具类的使用 二维数组的介绍 二维数组的声明与初始化 二维数组的遍历 二维数组的使用
第三部分:Java面向对象
面向对象设计思想 面向对象的分析与设计 Java与面向对象 类中成员变量的定义与意义 构造方法的定义和调用 面向对象的封装特性 局部变量和成员变量的作用域问题 静态属性、静态方法、静态代码块 面向对象的继承特性 继承中构造方法的细节 面向对象的多态特性 抽象方法与抽象类 接口的介绍 通过内部类制作性能检测工具 Java的内存分析
第四部分:常用基础类
枚举类型介绍 枚举的定义 结合switch-case使用枚举 String字符串 字符串缓冲区StringBuffer和StringBuilder 字符串与缓冲区的区别 基本类型的包装类型 Date类的使用 SimpleDateFormat类的使用 Math类的使用 Random类的使用 Runtime类的使用 System 类的使用 Calendar类的使用 Java8新特性
第五部分:集合
集合的概念和作用 集合和数组的区别 集合框架体系介绍 集合框架之Collection接口 泛型的使用 ArrayList和LinkedList的方法使用 ArrayList和LinkedList各自的工作原理分析原理分析 Vector和Stack使用介绍 使用多种方式遍历集合 迭代器的使用和工作原理 HashSet和LinkedHashSet各自的工作原理分析 集合框架之Map接口 TreeMap的方法使用和排序方式 分析Set和Map之间的区别与联系 Collections工具类的使用
第六部分:IO流
File类的作用 File类中常用方法的使用介绍 使用File类操作文件和文件夹 相对路径和绝对路径的介绍 IO流的概念和工作原理 IO流的分类 文件流的使用 转换流的使用 缓冲流的使用 对象流的使用 内存流的使用 使用不同的流实现文件内容的拷贝 RandomAccessFile类的使用 Properties类的使用 装饰者设计模式
第七部分:多线程
进程和线程的介绍 进程和线程之间的区别与联系 线程实现方式之继承自Thread类 线程实现方式之实现Runnable接口 线程实现方式之线程池 线程的生命周期 线程中常用方法的使用 多线程中的临界资源问题分析 解决临界资源问题之同步代码块 解决临界资源问题之同步方法 解决临界资源问题之ReentrantLock 多线程讲解和理解 多线程在单例中的应用 死锁介绍以及案例演示 生产者与消费者设计模式
第八部分:异常
异常的概念 异常的分类 异常的理解 常见异常介绍 运行时异常 编译时异常 运行和编译异常区别 异常的处理方式之捕获异常 异常的处理方式之抛出异常 异常的处理方式之断点调试 断点调试之引导运行步骤 自定义异常 异常关键字处理 关键字执行流程 异常总结
第九部分:网络
计算机网络和网络编程 网络编程与网页编程的区别 IP地址和端口号的介绍 网络通信协议的介绍 InetAddress类的方法使用 Socket通信模型的介绍 使用UDP实现数据的发送和接收 使用TCP实现数据的发送和接收 使用TCP实现文件的上传和下载 使用TCP实现多人聊天 URL和URLConnection使用介绍 URLEncoder和URLDecoder的使用介绍 基于HTTP协议访问网络资源 Json解析 基于HTTP协议实现网络文件的下载
第十部分:反射
反射机制的概念
反射机制的作用
反射机制的理解
Class类的使用
Class文件获取的三种方式
获取Constructor对象
获取私有Constructor对象
获取Method对象
获取私有Method对象
Constructor的使用
Method类的使用
Field类的使用
Modifier类的介绍
反射使用练习
反射机制在工厂设计模式中的应用
第十一部分:数据结构与算法
#### END
---
JavaWeb课程
第二阶段
内容
HTML5课程 CSS3 JavaScript MySQL使用 JDBC连接池 Servlet JSP AJAX jQuery Bootstrap
第一部分:HTML5
html概述 html基本标签 图片标签 超链接标签 表格标签 无序列表标签 有序列表标签 定义列表标签 div标签 语义化标签 表单标签 语义化表单元素 框架标签 特殊字符 综合案例
第二部分:CSS3
CSS3简介和用途 CSS3书写规范 CSS3基本语法 CSS3三种使用方式 标签选择器 Id选择器 Class选择器 属性选择器 层次选择器 文字、文本属性 背景、列表属性 尺寸、显示、轮廓属性 浮动、定位属性 盒子模型 CSS3高级属性
第三部分:JavaScript
JavaScript概述 JavaScript发展史 JavaScript组成 数据类型 运算符 分支语句 循环语句 系统函数、自定义函数、匿名函数 常见事件 数组、字符串、日期对象 正则表达式 BOM对象:window、history、location DOM概念 DOM操作:创建、修改内容、删除 Css样式操作
第四部分:MySQL使用
数据库简介 MySQL的安装与使用 MySQL客户端和服务器配置 用户权限管理 DDL创建数据库和表 约束与外键 DML实现添加、修改、删除数据 聚合函数、日期函数等 DQL简单查询 排序、分组、筛选 多表查询 子查询 in和exists关键字 分页查询 Mysql SQL语句优化介绍
第五部分:JDBC连接池
JDBC概述 JDBC使用步骤 Connection、Statement、ResultSet接口 使用JDBC 完成数据库DML操作 PreparedStatement对象 大数据的操作 批量处理与元数据 事务处理 隔离级别 自定义连接池 DBCP、C3p0连接池 DBUtis工具类 QueryRunner 自定义结果集处理 连接池知识总结
第六部分:Servlet
Tomcat与Eclipse的集成开发 什么是Servlet Servlet的进化史 Servlet的优化过程 Servlet中应用的多线程概念 Servlet接收客户端请求信息 Servlet响应客户端信息 Servlet的生命周期 重定向写法 转发写法 转发和重定向区别 HttpServletRequest获取中文乱码问题 HttpServletResponse响应中文乱码问题 Servlet路径映射问题 Servlet多路径映射
第七部分:JSP (现阶段使用较少)
什么是JSP JSP的内置对象**(9?)** 透析JSP的本质 JSTL+EL MVC介绍 分层的重要性 Web工程中事务实现 Session的使用 Cookie的使用 web工程中连接池的使用 实现用户的自动登录 文件的上传、下载 过滤器、 监听器 反射、注解、泛型 综合案例练习
第八部分:AJAX
Ajax技术背景 Ajax技术的理解 XMLHttpRequest使用步骤 XMLHttpRequest GET/POST的区别 同步请求&异步请求 同步请求&异步请求的区别 Ajax获取不同的返回值类型 Ajax使用原生JavaScript和Jquery的区别 Ajax响应状态处理 JSON语法 Java JSON 解析 Java JSON 生成 Java JSON 第三方工具快速解析 JavaScript JSON转换 Jquery JSON转换
第九部分:jQuery
jQuery介绍 jQuery版本介绍 jQuery对象和原生js对象介绍 jQuery对象和原生js对象互相转化 jQuery快速入门 jQuery语法详解 jQuery核心函数 jQuery onload处理 jQuery选择器 jQuery 文档处理 jQuery事件 jQuery遍历操作 jQuery自定义函数 jQuery动画效果 jQueryAJAX操作
第十部分:Bootstrap
Bootstrap介绍
Bootstrap开发环境搭建
Bootstrap的基本模板
Bootstrap快速入门
Bootstrap组成
栅格系统
利用栅格系统进行移动端页面适配
Bootstrap全局Css样式
Bootstrap修改原Css样式进行自定义
Bootstrap的js组件
Bootstrap的js组件样式修改
集成Bootstrapjs插件之导航条
集成Bootstrapjs插件之轮播图
集成Bootstrapjs插件之弹出框
Bootstrap进行项目整合
END
Java框架课程
第三阶段
Java框架课程内容
Maven Hibernate Spring Spring MVC MyBatis WebService SVN Activiti
第一部分:Maven
Maven环境搭建 Maven构建项目 Maven本地仓库配置 Maven中央仓库配置 Maven基本概念 Maven基本命令介绍 Maven于Eclipse整合 Maven于Idea整合 Maven创建web工程 pom.xml、依赖管理 坐标、依赖、生命周期等 Eclipse下的Maven使用 Maven中 继承、聚合 Maven构建SSH/SSM应用 自动部署、持续集成、持续部署
第二部分:Hibernate (国外使用较多)
Hibernate框架介绍 Hibernate于其他框架和DBUtil工具类对比 ORM思想 Hibernate 与JPA关系介绍 Hibernate.cfg.xml配置 hbm.xml映射文件详解 主键生成策略 PO对象三种状态分析与切换 Hibernate5一级缓存分析与测试 Hibernate5高级映射技术 一对多映射 多对多映射 Hibernate5多表联合查询 Hibernate5延迟加载 Hibernate5加载策略 二级缓存
第三部分:Spring
框架原理介绍 框架环境搭建 快速入门 创建Bean的方式及实现原理 Bean种类 Bean生命周期 Bean的作用域 Bean的注值的几种方式 整合Junit测试 Web项目集成Spring 注解装配Bean AOP思想、原理解剖 传统方式实现AOP开发 AspectJ介绍及实现AOP开发
第四部分:Spring MVC
Spring MVC 概述 使用 @RequestMapping映射请求 请求处理方法签名概述 处理方法签名详细说明 使用 HttpMessageConverter 处理模型数据 数据绑定流程剖析 数据格式化 数据校验 视图和视图解析器 处理方法的数据绑定 视图和视图解析器 文件上传下载 JSON处理 拦截器
第五部分:MyBatis(国内使用较多)
MyBatis数据框架介绍 MyBatis对比Hibernate框架 MyBatis配置、查询数据 MyBatis全局配置文件 MyBatis全局配置文件元素详细介绍 Mapper映射文件 MyBatis两种开发方式 MyBatis中别名配置 MyBatis # 和 $ 拼接参数区别(防止SQL注入) 关联查询,动态sql MyBatis缓存机制、整合ehcache MyBatis二级缓存处理 MyBatis、Spring、SpringMVC整合-(SSM整合) 分页插件 MyBatis逆向工程
* 第七部分:Git
Git简介
Git常用命令
END
Java + 云数据课程
第四阶段
Java + 云数据课程主要涉及的内容:
Linux MySQL优化 Nginx反向代理 Quartz 作业调度(和Spring自带定时任务的区别) Redis 高性能(Key-Value)数据库 Shiro 安全(权限)框架 es全文检索 Zookeeper 分布式系统 Dubbo实现分布式架构 ActiveMQ 消息队列 分布式事务和单点登录 分布式框架原理(采用视频资料教学) SpringBoot 快速构建JavaEE项目
第一部分:Linux版本
Linux简介和安装 Linux和Windows的区别 Linux远程登录 Linux常用命令 Linux文件管理 Linux用户管理 Linux用户组管理 Linux磁盘管理 Linux系统管理 Linux常用文件 Linux JDK安装 Linux Tomcat安装 Linux MySQL安装
第三部分:MySQL优化
优化数据访问 重构查询的方式 查询缓存 切分查询 MySQL索引 MySQL锁 MySQL执行计划 MySQL存储引擎 Schema与数据类型优化
第四部分:Nginx反向代理
Nginx反向代理介绍 Nginx 下载和安装 Nginx 编译和启动、访问 在Linux下搭建Nginx集群 在Windows搭建Nginx集群 解决Session共享问题
第五部分:Quartz 作业调度
Quartz作业调度简介 Quartz作业调度执行以及持久性 Quartz基本使用 Quartz核心类讲解 Quartz Trigger 触发器 Quartz Job&JobDetail Quartz Calendars日历讲解 JobListener监听器和TriggerListener监听器 Spring整合Quartz
第六部分:Redis 高性能(Key-Value)数据库
NoSQL 发展史简介 Redis 简介 Redis 安装以及调试 Redis 常用指令 Redis 高级使用(主从复制、哨兵模式、持久化机制) Jedis的基本使用 SSM框架基于Redis实现缓存 Redis 连接单机版 Redis 连接单机版使用连接池 封装和整合Spring Redis 集群搭建
第七部分:Shiro 安全(权限)框架
Shiro功能简介 Shiro框架介绍 ShiroFilter工作原理 Shiro 身份认证 Shiro Realm以及Authenticator Shiro拦截器和Permissions(授权) Shiro 自定义拦截器 Shiro Session会话 Shiro RememberMe功能 SSM集成Shiro综合权限菜单
第八部分:Lucene&Solr全文检索 (建议使用ElasticSearch)
Lucene 搜索引擎介绍 Lucene 中文分词器配置 Lucene 索引的维护包括创建、删除、修改操作 Lucene Query 各种查询方法 Lucene 高亮显示 Lucene Facet分面检索 Solr简介 Solr 安装和配置 Solr 索引库管理 什么是SolrCloud Solr集群的系统架构 将搜索功能切换到集群版
第九部分:Zookeeper 分布式系统
Zookeeper 简介 Zookeeper 特点 Zookeeper 安装和配置 Zookeeper数据类型 Zookeeper服务中操作 Zookeeper Wacth触发器 Zookeeper分布式应用
第十一部分:Dubbo实现分布式架构
Dubbo简介 单一应用框架 垂直应用框架 分布式应用框架 流动计算机架构 Dubbo 能做什么 Dubbo 实现原理 Dubbo 分布式集群模型 Dubbo管理控制台安装 Dubbo 集成 SSM
第十二部分:ActiveMQ 消息队列 (RabbitMQ、Kafka)
ActiveMQ简介 JMS简介 MQ 消息中间件 ActiveMQ 安装和使用 ActiveMQ 消息过滤 ActiveMQ 消息发布和订阅模式 ActiveMQ消息持久化 ActiveMQ与Spring 整合
第十三部分:分布式事务和单点登录
阶段提交协议讲解 使用消息队列来避免分布式事务 如何可靠保存凭证 业务与消息解耦方式 如何解决消息重复投递的问题 什么是单点登录 单点登录技术的实现机制
第十四部分:分布式框架原理(采用视频资料教学)
传统垂直mvc项目 垂直架构的缺点 RPC架构 RPC架构的核心技术点 RPC架构的问题 SOA服务化架构 框架设计原理 框架性能、可靠性、功能 协议栈(通信模型、协议消息定义、安全性设计) 服务路由 集群容错
第十六部分:SpringBoot 快速构建JavaEE项目
基于SpringBoot 的thymeleaf 模板引擎 基于SpringBoot 多模块实战开发 基于SpringBoot 文件上传 基于SpringBoot Data Solr搜索引擎开发 基于SpringBoot Email邮件发送 基于SpringBoot 的Redis实战开发 基于SpringBoot 的WebSocket实战开发 基于SpringBoot 的ActiveMQ消息队列END

评论
登录后即可评论
分享你的想法,与作者互动
暂无评论