绿野户外旅行网
- 解决分布式架构中的多服务器共享、异步信息等问题
智慧社区
化运国内
畅顺达物流
千锋教育
分布式商城系统
兜儿帮
多学科联合项目
新增内容
优化内容
新内容
基础课、职后课、课、企业课、项目课
- 新增大数据前沿技术:
a) 新增Hadoop大数据生态圈
b) 新增多范式编程语言Scala语言
c) 新增大数据计算引擎Spark
d) 新增列式存储数据库(ClickHouse)
- 新增NIO(Non-Blocking IO)、AIO(Asynchronous IO)。
- 新增Java基础垃圾回收算法(复制算法、标记清楚、标记整理、分代收集)。
- 新增并发工具类:CountDownLatch、CyclicBarrier、Semaphore。
- 新增MyBatis Plus技术。
-
新增Elasticsearch新增并发操作、Elasticsearch重试策略、smartCN分词与六大内置分词器演示、IK自定义词库、
Elasticsearch内部原理介绍。
-
新增Springcloud新增Nacos动态服务发现与配置管理、Sleuth链路追踪、Stream消息驱动、微服务Docker部署。
- 新增Spring Security oAuth2框架讲解。
- 前置JVM运行时数据区、垃圾判定、对象引用、常见垃圾回收算法、垃圾回收器。
- 优化LinkedList的底层数据存储结构课程。
- MySQL存储过程、触发器应用。
- 前端框架LayUI应用。
- 优化Redis底层数据结构分析。
- 新SpringCloud微服务架构源码分析部分。
- 新spring security实现权限控制。
六维全息
课程体系搭建
构建囊括基础课、专业课、项目课、企业课、课、职后课六位一体的线上线下全息课程。基于敏捷思维设计,以Java分布式、微服务技术为主,云计算、大数据、物联网为辅
融入4周
Big
Data技术
对主流大数据技术和Hadoop生态圈进行深入学习,对不同类型的大数据分析及处理系统、解决方案及行业案例进行剖析和讲解。让学生得到跨域提升,重新定义Java高端课程。
严格把控技术的
前瞻性
加入10+微服务架构技术,300+技术优化新,10+套全新企业级分布式微服务项目,Java版本升级为SE11,紧跟市场步伐!如Redis、ElasticSearch的JAVA API选型等,遵从企业应用广泛、代表未来发展方向的技术。
项目原型为BAT
十亿级流量平台
热点技术+项目,紧跟时下技术发展趋势,项目以BAT十亿级流量以上平台为原型。如:腾讯开放平台、阿里聚石塔等,覆盖当下热点:电商、物联网、通信、云计算、产业互联网等。
一站式实践敏捷开发
和DevOps理念
标准的团队开发流程,全程一站式实践敏捷开发和DevOps的理念,从需求分析、架构设计、微服务拆分、代码开发,自动化测试完全遵从大公司的开发规范。
主打分布式高并发
场景
减少Java WEB开发的权重,增加分布式、微服务、高并发、高可用、海量数据处理技术的授课权重,打破以WEB单体应用开发的伪分布式课程。
阶段项目逐级架构
贯穿始终
项目学科为主线,以解决项目中的问题为出发点,学完一个知识点,就开发一个与知识点相关的微服务模块,后组成一个完整的项目。
技术大咖导师全程亲授
大咖级讲师团队,公司总监级技术大神面授,有BAT/TMD T8+的架构师共同把控技术教研,以同行无实际工作经验转学科为耻。
培养架构设计能力
紧贴主流互联网公司小前台、大中台的战略,以培养Java大中台研发工程师为目标,不以WEB可视化网页作为宣传噱头,学生直接跳过初级开发工程师的级别,具备架构设计理念与能力。
老学员终身
职后课提升
一次学习,终身技术提升服务。大咖讲师每周开设在线技术提升公开课,根据市场需求实时新发布课程内容。持续不断的职后提升课,实现学员与岗位无缝对接,为老学员涨薪再添。
阶段
JavaSE基础(4周)
第二阶段
JavaWeb进阶(4周)
第三阶段
框架应用(4周)
第四阶段
分布式 + 微服务实战(5周)
第五阶段
大数据生态技术(5周)
课程细类 | 课程内容 | 掌握能力 |
---|
Java概述与环境搭建 |
- Java历史 - Java语言特点 - 运行机制 - 环境搭建 - 个Java程序 - 初始字节码文件 - Javap命令 - 语言规范 - 编译运行指令 - 标识符命名规范 |
- 了解Java语言发展史 - 了解Java语言的特点 –了解 计算机运营机制、Java运营机制 - 掌握环境搭建 - 了解DOS命令 - 掌握手动安装JDK,配置环境变量 - 掌握个java程序 - 掌握Java基本命令 - 掌握Java命名规范 - 了解进制 - 了解进制及其转换 - 了解原码、反码、补码 - 掌握变量的作用和定义的方式 - 能根据实际情况选择使用8种基本数据类型 - Scanner的使用 - 掌握算术运算符、赋值运算符 - 掌握关系运算符和逻辑运算符 - 掌握数据类型之间的转换 |
语言基础 |
- 进制 - 原码 - 反码 - 补码 - 变量 - 数据类型 - 运算符 - 类型转换 - 类型提升 - Scanner入 |
|
选择结构与分支结构 |
- 基本if - if else - 多重if - 嵌套if - switch - break - 局部变量 |
- 掌握if语句和switch语句的区别和使用场合 - 掌握break在switch中的用法以及default语句 - 掌握三种循环的书写格式以及执行顺序 - 掌握break和continue循环流程控制关键字 - 掌握使用循环解决复杂问题 - 掌握嵌套循环的使用与熟悉嵌套的循环的应用场景 |
循环结构 |
- while循环 - do while循环 - for循环 - break关键字 - continue关键字 - 嵌套循环 - label跳转 - 图形打印 |
|
方法/函数 |
- 方法的概念 - 方法的定义 - 方法的组成 - 方法的调用 - 方法的形参与实参 - 方法的返回值类型与返回值 - return的两种用法 - 递归 |
- 掌握方法的组成 - 掌握方法的声明与使用 - 掌握方法的参数定义与使用 - 掌握方法的返回值与return关键字的使用 - 掌握递归的使用与适用问题 - 掌握IDEA集成开发工具的使用 - 掌握数组的创建、基础应用 - 掌握数组的遍历方式 - 了解数组的复制方式、扩容思路 - 了解使用数组实现容器结构问题 - 掌握基本内存结构 - 掌握基本类型与引用类型参数传递的区别 - 方法的可变长参数 - 掌握Arrays工具类提供的常见方法 - 了解二维数组的定义和内存结构分析 - 了解二维数组的应用场景 - 掌握IDEA调试技巧 |
数组(一) |
- IDEA环境使用 - 使用数组的引言 - 数组的概念 - 数组的创建 - 使用 - 复制 - 扩容 - 插入 - 删除 - 数组参数和返回值 - 可变长参数 - 冒泡排序 - 选择排序 - 插入排序 |
|
数组(二) |
- 希尔排序 - 快速排序 - 二分查找 - Arrays工具类 - 二维数组 - 杨辉三角 - IDEA调试技巧 |
|
面向对象基础(一) |
- 生活中的面向对象 - 什么是对象 - 现实与程序中的对象 - 什么是类 - 类的抽取 - 类的定义 - 对象的创建 - 类与对象的关系 - 实例变量 - 实例变量与局部变量的区别 - 实例方法 - Java对象内存分析 - 方法重载 - 构造方法 - 对象创建过程 - 构造方法重载 - 默认构造方法 - 有参构造的作用 - this关键字 |
- 了解面向对象和面向过程编程思想及其区别 - 理解类和对象的概念,以及两者之间的关系 - 掌握类的成员变量和成员方法 - 掌握成员变量和局部变量区别 - 掌握对象的创建过程和内存分析 - 掌握构造方法的语法、特点及构造方法重载 - 掌握基本数据类型传递和引用数据类型传递的区别 - 理解this的本质 |
面向对象基础(二) |
- 什么是封装 - 封装的操作 - 封装的目的 - 生活中的继承 - 程序中的继承 - 父类的选择依据 - 父类的抽象 - 继承语法 - 继承的特点 - 不可继承 - 访问修饰符 - 方法的覆盖/重写 - super关键字 - 继承后的对象创建过程 - this与super的对比 - 生活中的多态 - 程序中的多态 - 多态中的方法覆盖 - 多态的应用场景(一、二) - 装箱、拆箱 - instanceof |
- 理解封装的特点和好处 - 理解继承的思想和好处 - 掌握重写的意义和规范,区分重写和重载 - 掌握继承体系下对象的创建过程和内存分析 - 了解继承和组合所表述的关系,合理的使用继承和组合 - 掌握super关键字的使用,以及super和this的区别 - 掌握多态的原理、发生多态的条件和多态的使用场合 - 掌握向下转型和向上转型 - 掌握instanceof运算符的使用 |
三个关键字 |
- 什么是抽象 - 生活中的抽象 - 抽象类 - 抽象类的作用 - 抽象方法 - 抽象方法的作用 - 什么是静态 - 实例属性和静态属性的对比 - 静态方法 - 静态方法的特点 - 类加载基本概念 - 静态代码块 - 继承关系下带有静态成员的对象创建过程 - final类 - final方法 - final常量 - 局部实例静态常量的赋值时机与deadline - 基本类型常量与引用类型常量的区别 |
- 掌握抽象类和抽象方法的特点和使用 - 理解static修饰属性和方法的作用 - 理解静态代码块的执行时机 - 掌握final关键字的使用 - 理解基本类型常量与引用类型常量 |
接口 |
- 接口的语法 - 与抽象类的异同 - 接口的微观概念 - 接口规范 - 接口引用 - 接口的多态 - 常见关系 - 接口常量 - 接口的宏观概念 - 接口回调 - 接口的好处 - 默认方法 - 静态方法 - 面向对象7大设计原则 |
- 掌握接口的定义和实现,以及接口和抽象类的区别 - 理解接口回调 - 了解面向接口编程思想 - 了解静态方法和默认方法 - 理解面向对象7大设计原则 |
常用类(Object/内部类/包装类/String) |
- 什么是内部类 - 成员内部类 - 静态内部类 - 局部内部类 - 局部内部类访问外部类局部变量 - 局部内部类的应用场景 - 匿名内部类 - Object类 - getClass方法 - hashCode方法 - toString方法 - equals方法 - equals方法重写 - finalize方法 - 什么是包装类 - 8种包装类型 - 装箱和拆箱的常用方法 - 整数类型的缓冲区 - String类 - 字符串的不变性 - 字符串的常用方法 - Java字符串池 - 可变字符串(StringBuilder、StringBuffer) - BigDecimal - Date - Calendar - SimpleDateFormat - Math - Random - System - Runtime |
- 了解内部类的定义和特点 - 掌握Object类中常用方法 - 掌握Java的八种基本数据类型的包装类 - 理解Integer类的源码 - 掌握String类的使用 - 掌握Stringbuffer和StringBuilder的常用方法 - 掌握Stringbuffer和Stringbuilder的区别和联系 - 理解String和StringBuffer的源码 - 掌握Date、DateFormat的使用 - 了解Calendar类 - 了解Math、Random类基本用法 - 了解BigInteger类和BigDecimal类的基本用法 - 了解System、Runtime类的使用 |
集合(一) |
- 什么是集合 - Collection体系集合 - Collection父接口 - List子接口 - ArrayList - ArrayList源码分析 - LinkedList - LinkedList源码分析 - Vector - Stack - Queue - 线性表与链表的区别和优劣 - 实现链表数据结构 - 泛型特性 - 泛型集合 - Collections工具类 |
- 掌握集合的概念和体系结构 - 掌握List接口以及List接口子类的底层数据结构 - 了解ArrayList、LinkedList底层源码 - 掌握Iterator迭代器的迭代过程 - 了解ListIterator的特点和使用 - 了解Vector、Statck、Queue - 掌握泛型在集合中的用法 - 掌握集合在实际开发中的选择依据 - 了解泛型的定义 - 了解Collections工具类 |
集合(二) |
- Set子接口 - HashSet - HashSet去重原理 - 重写hashCode与equals - LinkedHashSet - TreeSet - TreeSet去重原理 - 实现查找二叉树数据结构 - Map体系 - Map父接口 - HashMap - HashMap源码分析 - Hashtable - Properties - TreeMap |
- 掌握Set接口以及Set接口子类的的底层数据结构 - 掌握HashSet的去重原理 - 了解LinkedHashSet、TreeSet - 了解查找二叉树 - 掌握HashMap的基本用法 - 掌握HashMap的底层原理 - 掌握TreeMap的基本用法以及底层数据结构 - 了解Hashtable、Properties |
异常 |
- 什么是异常 - 异常体系分类 - 异常的产生 - 异常的传递 - throws - 异常的处理(try、catch、finally) - 常见的处理结构 - 自定义异常 - 带有异常声明的方法覆盖 |
- 了解异常的结构体系和分类(Error和Exception) - 了解Error错误类,以及常见的Error错误 - 掌握使用try-catch-finally处理异常并理解其执行过程--- 掌握使用throw抛出异常 - 掌握使用throws声明异常 - 掌握Exception体系 - 了解自定义异常类的定义和使用 |
多线程(一) |
- 什么是进程 - 什么是线程 - 线程的组成 - 创建线程的两种基本方式 - 线程状态(4状态) - 常见方法 - 线程状态(5状态) - 线程安全问题、 - 同步代码块 - 同步方法 - 线程状态(6状态) |
- 理解进程和线程的概念及其区别 - 掌握多线程创建方式 - 了解多线程的控制方法 - 掌握多线程的生命周期 - 理解线程安全问题 - 掌握同步代码块和同步方法 |
多线程(二) |
- 死锁问题 - 生产者消费者 - 线程通信(wait、notify、notifyAll) - 线程池概念 - 线程池原理 - 线程池相关接口与类 - Callable接口 - Future接口 - Lock接口 - 重入锁 - 读写锁 - 线程安全集合 - Collections工具获得线程安全集合 - CopyOnWriteArrayList - CopyOnWriteArraySet - ConcurrentHashMap - 三个集合的源码 - 分析Queue接口 - ConcurrentLinkedQueue - CAS比较交换算法 - BlockingQueue接口 - ArrayBlockingQueue - LinkedBlockingQueue - volitale关键字 - 原子变量 - 并发工具类CyclicBarrier - CountDownLatch - Semaphore |
- 理解死锁产生的原因 - 理解生产者消费者模式的扩展实现 - 理解线程通信 - 掌握wait、notify、notifyAll方法的使用 - 掌握线程池的使用 - 了解Callable接口、Future接口的使用 - 理解Lock锁和Condition - 了解重入锁、读写锁的使用 - 了解线程安全集合的使用 - 理解CAS算法 - 理解volatile关键字 - 了解原子变量 - 了解并发工具类CyclicBarrier、CountDownLatch、Semaphore的使用 |
I/O框架 |
- File - 流的概念 - 流的分类 - 字节流 - 字节节点流 - 字节过滤流 - 对象序列化 - 内存流 - FileFilter - 字符编码 - 字符流 - 字节过滤流 - 流的标准使用步骤 - RandomAccessFile - 重定向标准输出流 - 装饰者设计模式 |
- 了解IO流的概念以及分类 - 掌握文件流和缓冲流 - 理解数据流和对象流 - 掌握对象序列化和反序列化的实现和原理 - 掌握通过IO流实现文件夹的复制 - 了解RandomAccess的使用 - 了解重定向标准输出流 - 理解装饰者设计模式 |
网络编程 |
- 什么是网络 - 什么是计算机网络 - 网络模型 - TCP/IP模型 - TCP/UDP - IP - IPV4应用分类 - Port端口 - InetAddress类 - 基于TCP的网络编程 - 开发步骤 - 客户端上传文件 - 聊天室实现 - UDP协议 |
- 了解网络编程基础知识 - 了解OSI的七层参考模型 - 理解TCP/IP协议栈 - 理解TCP协议和UDP协议 - 掌握IP地址和端口号 - 掌握基于TCP的网络编程步骤 - 能够使用TCP编程实现用户登录功能 - 能够使用UDP编程实现在线客服功能 - 能够使用TCP编程实现上传文件功能 |
I/O |
- NIO概述 - Buffer基本操作 - Buffer实现原理 - FileChannel的使用 - 使用NIO实现非阻塞网络编程 - AIO概述 - BIO NIO BIO区别 - AIO使用案例 |
- 理解NIO的概念 - 掌握Buffer的实现原理及使用 - 掌握FileChannel的使用 - 了解非阻塞网络编程 - 掌握AIO的使用步骤 - 了解BIO、NIO、BIO区别 |
反射 |
- 什么是类对象 - 获取类对象 - Class的常用方法 - 基于反射的通用编程 - 工厂模式 - 单例模式 - 注解 - 枚举 |
- 了解反射的运行原理以及概念 - 掌握Class类对象的实现方式 - 掌握Class类的常用方法 - 掌握Constructor、Method、Field类的用法 - 了解常见设计模式、简单工厂、单例设计模式 - 理解内置注解和元注解 - 理解自定义注解 - 理解使用反射读取注解 - 理解枚举的本质 |
JDK8 |
- Java8概述 - Lambda表达式 - 函数式接口 - 方法引用 - Stream特点 - Stream使用步骤 - Stream API - Date Time API(LocalDate 、LocalTime 、LocalDateTime) - Optional类 |
- 掌握Lambda表达式的使用 - 了解常见函数式接口 - 了解方法引用 - 掌握Stream API的使用步骤 - 了解JDK8新时间LocalDateTime等的使用 - 理解Optional类的使用 |
JVM |
- JVM类加载机制 - Java运行时数据区(虚拟机栈、本地方法栈、程序计数器、堆、方法区、直接内存) - 垃圾判定(引用计数法、可达性分析法) - 垃圾回收算法(复制算法、标记清除、标记整理、分代收集) - 对象引用(强、软、弱、虚) - 常见垃圾回收器 - 栈上分配 - 逃逸分析 - TLAB - Javap+代码落地+分析图 |
- 理解class文件构成、类加载机制 - 了解Java运行时数据区组成:虚拟机栈、本地方法栈、程序计数器、堆、方法区、直接内存 - 掌握垃圾判定算法 - 了解对象引用:强、软、弱、虚 - 了解常见垃圾回收器 - 了解栈上分配优点 - 了解逃逸分析 - 了解TLAB的作用 |
课程细类 | 课程内容 | 掌握能力 |
---|
MySql |
- 引言 - 数据库概念 - 常见数据库 - MySql数据介绍 - MySql安装(5.7) - 客户端工具安装及使用 - 导入现有库表 - 基础查询 - where条件查询 - like - 聚合函数 - group by - having - order by - limit - 多表查询(union、union all、inner join、outer join、自然连接) - 子查询 - DML - 库表操作(创建库表、约束、表关系、补充外键约束、修改、删除) - 事务(ACID) - 创建用户 - 授权 - 时间处理 - 字符串 - 视图 - SQL语言分类 - 综合练习 - 存储过程 - 触发器 - idea开发工具 |
- 掌握MySQL服务器的安装与配置 - 掌握MySQL客户端的使用 - 掌握select语句 - 掌握常用函数的使用 - 掌握条件、模糊、分组查询 - 掌握having、order by、limit的使用 - 掌握子查询 - 掌握分页查询 - 掌握数据库表的创建 - 掌握DML语句 - 理解修改删除数据库表 - 掌握表的完整性约束 - 理解事务及其特征 - 理解事务的并发问题 - 理解事务的隔离级别 - 了解视图 - 了解存储过程 - 了解触发器的使用 |
JDBC |
- JDBC概述 - 连接流程图 - JDBC体系结构 - 基本使用(注册驱动、建立连接) - Statement(DDL、DML) - ResultSet - 综合案例(登录) - SQL注入 - PreparedStatement - 强化练习 - JUnit - 封装工具类(两种) - 查询封装(ORM) - 数据访问对象(DaoImpl实现CRUD) - Date工具类封装 - Service实现业务功能 - JDBC控制事务 - ThreadLocal - 修改封装工具类(从ThreadLocal中获取Connection) - 三层架构思想(DAO、Service、View) - DAO接口 - Service接口 - 重构项目结构 - DAO通用方法(增删改、查【RowMapper】) - Druid连接池 - DBUtils |
- 理解JDBC及其特点 - 掌握JDBC的使用步骤 - 掌握JDBC完成CRUD - 理解什么式SQL注入 - 掌握PreparedStatement的作用 - 了解JUnit的使用 - 掌握如何封装工具类 - 掌握什么是DAO、Service - 掌握JDBC中事务的使用 - 掌握ThreadLocal的使用 - 理解三层架构思想 - 掌握DAO通用方法(增删改、查【RowMapper】) - 了解Druid连接池 - 了解DBUtils的使用 |
HTML |
- HTML概述 - 基本结构 - 基本标签(结构、排版、标题、容器、列表、图片、超链接、表格) - 综合案例 - 表单 - 框架 - 特殊字符 |
- 掌握HTML基础标签 - 掌握img和a标签 - 熟练使用表格标签在页面上绘制表格 - 掌握表单标签 - 熟悉框架标签 - 熟悉特殊字符的使用 |
CSS |
- CSS概述 - 使用方式 - 选择器 - 属性 - 盒子模型 - CSS3属性 - 综合案例 |
- 掌握CSS常见选择器 - 掌握常用CSS样式 - 熟练使用div标签 - 熟练使用块级、行内元素 - 理解CSS盒子模型 - 熟悉CSS3新增属性 |
Servlet |
- 引言(B/S、C/S) - Tomcat概述 - 安装 - 目录结构 - 启动 - URL访问静态资源 - 停止 - B/S流程图 - 常见错误 - 个Servlet(手动编写、导包、配置环境变量、web.xml) - 获取系统时间案例 - 随堂练习 - idea创建web项目 - 通过IDEA完成一个Servlet的书写及配置 - idea与Tomcat集成 - 练习 - HTTP(请求、响应、方式) - Servlet两种创建方式 - 两种配置方式 - 收参 - 处理乱码 - 集成JDBC - 转发 - request作用域 - 重定向 - 补充(Servlet生命周期、Servlet特性(单例+线程安全问题)、初始化参数) - Cookie - Session(服务器记录用户状态、验证码) - Session作用域 - ServletContext - ServletContext作用域 - Filter - Listener - 综合案例 - 注册 - 验证码 - 权限验证 - 查询所有 - 修改 - 删除 |
- 理解B/S和C/S架构 - 掌握Tomcat服务器搭建 - 理解HTTP协议 - 熟练查看HTTP请求,响应消息 - 熟练创建web应用、发布和访问 - 掌握Servlet开发过程及生命周期 - 掌握Servlet的配置 - 掌握HttpServletRequest的API - 掌握HttpServletResponse的API - 掌握请求转发与重定向的区别 - 掌握路径和相对路径的使用 - 掌握会话跟踪技术Cookie和Session - 掌握Cookie和Session联系和区别 - 掌握ServletContext - 掌握ServletConfig - 掌握Filter的使用 - 了解Listener的使用 |
JSP |
- 什么是JSP - 脚本<%= <% <%! <%-- - 与Servlet的区别和关系,指令(page、include、taglib) - 动作(forward,include,param,useBean,setProperty,getProperty) - 内置对象 - 对比作用域对象 - 将Servlet中的View修改成JSP版本 - EL + JSTL - MVC - MVC和三层对比 - 分页 |
- 掌握JSP执行过程 - 掌握JSP页面的Java脚本 - 掌握JSP的常用指令元素和动作元素 - 理解JSP底层原理 - 掌握JSP九大内置对象 - 掌握JSP四个作用域 - 理解Servlet和JSP的关系和区别 - 理解MVC模式 - 掌握分页的步骤 |
《EMS员工管理系统》 |
- 上传和下载 - 数据库、DAO、Service、Controller、JSP、加密算法、私盐、分页、验证码、权限验证 |
- 掌握上传和下载的使用 |
JS |
- JS概述 - JS语法 - 运算符 - 函数 - 系统函数 - 事件 - 字符串 - 正则 - BOM概述 - Window - Date - 案例 - DOM概述 - 节点 - 节点属性 - 节点方法 -循环节点案例 - 属性 - 文本 - 元素标签CRUD - 购物车案例 - 事件冒泡 - 拦截 |
- 掌握JavaScript基本语法 - 掌握常用系统函 - 掌握自定义函数 - 掌握数组的定义和使用 - 熟练运用浏览器开发者工具调试程序 - 理解DOM和BOM的关系和区别 - 掌握window对象的使用 - 掌握location对象的href属性与reload方法 - 熟悉history对象访问历史记录 - 理解DOM及其节点类型 - 掌握使用DOM获取元素 - 掌握事件冒泡和捕获、事件拦截 |
Ajax |
- JSON - 浏览器处理JSON字符串 - Java中处理JSON - FastJSON - Jackson - Ajax概述 - Ajax使用步骤 - XMLHttpRequest - 回调函数 - onreadystatechange - open - send - 验证用户名 - DOM案例 |
- 掌握JSON语法 - 掌握浏览器端如何处理JSON字符串 - 掌握使用FastJSON、Jackson处理JSON字符串 - 理解什么是AJAX - 掌握AJAX的使用步骤 |
JQ |
- jQuery概述 - jQuery引用、语法(选择器、事件、效果) - DOM操作 - 节点关系 - 案例(级联、全选) - Ajax(ajax、get、post) - 表单校验 - 自动填充 - 重复验证 - Ajax+DOM - 综合案例 - 商品增删改查 - 分页 |
- 理解jQuery的特点和优势 - 掌握jQuery入口函数 - 掌握jQuery对象与DOM对象的转换方法 - 熟练使用jQuery常见选择器 - 掌握jQuery事件的绑定方法 - 掌握jQuery内容操作 - 掌握jQuery属性节点操作 - 掌握jQuery元素节点操作 - 掌握jQuery样式操作 - 掌握使用jQuery进行表单验证 - 掌握jQueryAjax操作 |
Bootstrap |
- Validate - bootstrap概述 - 模版页面 - 容器 - 栅格 - 表单 - 表格 - 按钮 - 图片 - 分页 - 导航条 - 缩略图 - 模态框 - 轮播图 - 注册案例 - 轮播案例 |
- 掌握Validate实现表单验证 - 了解BootStrap的特点和优势 - 掌握BootStrap栅格系统 - 了解常用全局CSS样式 - 了解常用组件 - 了解常用BootStrap插件 |
LayUI |
- 引言 - LayUI介绍 - LayUI基础模板搭建 - LayUI模块加载 - LayUI页面元素(布局、字体图标、按钮、表单、表格、导航、动画) - 内置模块(layer、laydate、table、laypage、form、upload、carousel) |
- 掌握LayUI模块搭建 - 理解LayUI模块加载 - 掌握常用见页面元素的使用:布局、字体图标、按钮、表单、表格、导航、动画 - 了解LayUI内置模块:layer、laydate等。 |
课程细类 | 课程内容 | 掌握能力 |
---|
Maven+Git |
- 引言(使用原生方式构建项目需要手动导入依赖,麻烦,项目过大) - Maven介绍 - Maven安装 - Maven配置 - Maven项目创建 - 依赖的scope - Maven的命令 - 实操使用右侧maven-lifecycle操作 - 自定义骨架 - 生命周期和插件关系 - 聚合 - 继承 - 依赖传递性 - resources - Maven父子工程 - 引言(单人开发中版本控制,多人协同开发版本的控制) - Git介绍 - Git安装 - Git架构 - Git本地仓库常用命令 - 远程仓库命令详述 - Git分支 - 多人协同开发流程 - Git工作流 - Github - Gitlab |
- 掌握Maven原理 - 掌握POM模型 - 理解WAR类型Maven项目 - 掌握Maven常见插件 - 掌握Maven常见命令 - 了解自定义骨架 - 理解聚合、继承、依赖传递性 - 掌握Maven子父工程的创建 - 掌握Git的安装 - 掌握Git版本库的创建 - 掌握Git的版本控制 - 掌握Git远程仓库的管理和使用 - 了解Git工作流 - 掌握Github的使用 |
MyBatis |
- 引言 - MyBatis框架介绍 - 安装与下载 - Maven创建Java项目 - 环境搭建 - 代码入门 - 核心配置(environment,transactionManager,dataSource,mapper) - Mapper接口方案 - iBatis - 补充(pom.xml中的 - CRUD(参数绑定、模糊查询、主键回填) - 封装工具类 - ORM(自动、列别名、ResultMap、一对一、一对多、多对多) - 嵌套查询 - 延迟加载 - 动态SQL - - 缓存 - Druid连接池集成 - PageHelper分页 - 分页性能优化 - 源码、执行过程、配置文件加载、事务管理、缓存 - 注解 - 代码生成 - 通用Mapper - MyBatis-Plus |
- 掌握MyBatis的核心配置 - 理解MyBatis的映射原理 - 掌握映射文件的详细配置 - 了解嵌套查询、延迟加载 - 掌握动态SQL的使用 - 掌握Mybatis缓存的使用 - 掌握如何集成Druid连接池 - 掌握PageHelper的使用及性能优化 - 了解注解的详细配置 - 掌握相关插件的使用 - 掌握逆向工程的配置及使用 - 了解MyBatis-Plus的使用 |
Spring |
- 引言 - Spring框架概念 - Spring下载 - Spring架构组成 - 手动反射实现工厂 - Spring工程构建 - 环境搭建 - 依赖和配置文件详解 - Schema介绍 - DI依赖注入 - 对象单例和多例注入 - 工厂特性问题 - 源码分析、启动过程、三级缓存 - 代理设计模式介绍 - 静态代理 - 功能分离 - 静态代理案例 - 动态代理 - JDK动态代理 - CGLib动态代理 - 面向切面编程 - AOP术语 - AOP作用 - SpringAOP开发流程 - AOP小结 - 通知类 - 通配切入点 - 后处理器 - 完整的Bean的生命周期 - AOP源码分析(动态代理) - Spring与Mybatis整合 - Spring事务管理 - SM+事务整合 - SpringAOP注解 - IOC注解 - DI注解 - Spring集成JUnit测试 - Spring5新特性 |
- 理解为什么使用Spring框架 - 掌握Spring工程的创建 - 掌握Spring配置文件 - 掌握IoC/DI 原理 - 理解代理设计模式 - 掌握JDK动态代理 - 掌握CGLiB动态代理 - 理解AOP面向切面编程 - 掌握AOP相关术语 - 掌握Spring如何整合MyBatis - 掌握Spring事务管理 - 了解SpringAOP注解和IOC注解、DI注解 - 了解Spring5新特性 |
SpringMVC |
- 引言 - MVC设计模式回顾 - SpringMVC框架作用 - SpringMVC组成部分 - SpringMVC的使用流程(依赖,配置文件,注解) - 参数绑定 - 跳转 - 跳转方式选择 - 共享域传值 - @SessionAttribute - SessionStatus - 静态资源处理 - 拦截器 - 异常处理 - 文件上传 - 文件下载 - 验证码 - OSS - 短信验证 - RESTful风格路径设计 - 跨域问题详解(cors) - 请求处理过程详细 - (DispatcherServlet继承关系) - (handlerMapping 和 handleradapter配合) - (各种View) - (Json处理流程区别) - Spring和SpringMVC的IOC容器关系 |
- 掌握SpringMVC运行原理 - 理解SpringMVC参数注入 - 理解SpringMVC视图解析器 - 理解SpringMVC参数绑定 - 掌握SpringMVC跳转、共享域传值 - 掌握SpringMVC静态资源处理 - 了解SPringMVC拦截器、异常处理 - 理解SpringMVC文件上传/下载 - 理解SpringMVC返回JSON数据 - 理解SpringMVC接收不同请求类型 - 了解RESTful路径风格的使用 - 了解SpringMVC跨域问题处理 - 掌握SpringMVCJson处理 |
Shiro |
- Shiro概述 - 架构介绍 - RBAC模型介绍 - 入门编码流程 - Spring集成 - 自定义Realm - 登录 - 加密 - 授权 - jsp标签 - 记住我 - 动态获取地址权限 - session管理原理 - session属性修改 - session持久化 - shiro注解 - 自定义菜单管理 |
- 掌握Shiro架构原理 - 掌握Shiro授权实现 - 掌握Shiro认证实现 - 掌握自定义Realm - 掌握凭证匹配器 - 掌握Remember Me实现 - 掌握session管理原理 - 掌握session属性修改、持久化 - 了解shiro注解 |
日志 |
- 引言 - 日志介绍 - 日志信息级别 - 日志使用理解 - Log4j+commons-logging - Logback+Slf4j |
- 理解日志的作用 - 了解日志级别 - 掌握Log4j+commons-logging的使用 - 掌握Logback+Slf4j的使用 |
quartz |
- 引言 - Quartz框架介绍 - Quartz基本使用 - Quartz组成 - SimpleTrigger - CronTrigger - Cron表达式 - Scheduler操作定时任务(开启、暂停、移除、恢复、立即执行) |
- 掌握Quartz触发规则 - 掌握Quartz 核心类 - 掌握Quartz对任务操作 - 掌握Cron表达式 - 掌握Scheduled的使用 |
VUE |
- Vue.js介绍及MVVM模式介绍 - Vue.js的初体验 - Vue.js的插值表达式 - v-if、v-show、v-for的使用 - Vue的属性绑定 - Vue的事件绑定 - Vue的计算属性 - 组件介绍及组件的全局注册 - 组件的本地注册 - 组件的生命周期钩子函数 - 使用vue-cli搭建webpack框架项目 - Webpack框架结构介绍 - Webpack项目中组件的参数传递 - 路由模块介绍及使用 - 路由参数传递 - Axios模块介绍及使用 - Vue实战之使用Element_UI - Vue实战之实现后端接口调用 - Vue实战之VueX状态管理 - SSM综合练习(SSM+Axios+JSON+HTML+DOM+Element_UI+VUE) |
- 掌握前后端开发思想 - 掌握Vue的插值表达使用 - 掌握Vue的属性绑定 - 掌握Vue的事件绑定 - 理解Vue的计算属性 - 理解Vue常用组件 - 掌握Webpack框架的使用 - 理解路由模块使用 - 了解Axiox模块的使用 - 了解Element UI的使用 |
课程细类 | 课程内容 | 掌握能力 |
---|
架构演进 |
- 软件架构 - 软件架构常见类型 - 单体架构 - 多机架构 - 集群架构 - 集群架构的问题 - 垂直架构 - 垂直架构的问题 - 分布式架构 - 微服务架构 |
- 掌握架构的概念 - 掌握常见架构分类 - 掌握项目发展的瓶颈点 - 掌握分布式拆分方案 - 掌握分布式知识点的应用点 - 掌握架构问题的解决方案 |
Linux |
- 介绍Linux - 安装Linux - Linux的目录结构 - Linux的基本命令 - 目录的命令 - 文件的命令 - 压缩包操作 - 用户命令 - 组的命令 - 系统命令 - 进程 - 服务 - 安装软件 - 部署SSM项目 |
- 掌握Linux常用命令 - 掌握JDK安装 - 掌握Tomcat安装 - 掌握MySQL安装 - 掌握项目部署运行 |
Docker |
- Docker介绍 - Docker架构 - Docker安装 - 查看仓库,配置私服 - 镜像操作 - 容器操作 - Docker应用 - Dockerfile部署SSM - 自定义镜像管理 - Docker-Compose - Docker CI、CD - K8s |
- 理解Docker的核心概念 - 熟练Docker安装与启动 - 掌握Docker架构 - 掌握镜像加速器配置 - 掌握镜像操作常用命令 - 掌握容器操作常用命令 - 掌握DockerFile的编写使用 - 掌握搭建本地镜像仓库 - 掌握Docker容器生命周期 - 掌握Docker数据管理 - 掌握Docker-compose服务编排 - 掌握Docker-compose配置文件编写 - 掌握Docker-compose部署容器 - 掌握CI持续集成 - 掌握CD持续交付 |
Nginx |
- Nginx介绍 - Nginx安装及配置文件介绍 - Nginx反向代理(正向代理介绍,反向代理介绍,实现反向代理) - Nginx负载均衡(负载均衡介绍,轮询实现,权重实现,ip_hash实现) - Nginx动静分离(动静分离介绍,静态代理实现) - Nginx部署SSM工程 - Nginx原理 |
-了解什么是反向代理 -了解什么是Nginx -掌握Docker安装Nginx -掌握Nginx配置虚拟主机 -掌握使用Nginx配置服务反向代理 -掌握Nginx配置负载均衡 -掌握Nginx动静分离 |
Redis |
- Redis介绍 - Redis安装及图形化界面链接 - Redis的数据类型。 - string结构应用及常用命令 - hash结构应用及常用命令 - list结构应用及常用命令 - set结构应用及常用命令 - zset结构应用及常用命令 - key常用操作命令 - Java连接Redis及操作 - 修改SSM工程实现Session共享并部署到Linux - 管道介绍及使用 - 连接配置 - 事务 - 持久化 - 过期策略(定时删除,惰性删除) - 内存淘汰策略 - 底层数据结构、协议 - hyperlog - bitmap - 集群、哨兵 |
- 了解Nosql的核心概念和应用场景 - 掌握Redis的安装 - 掌握Redis的五种数据模型 - 掌握Redis的常见命令 - 掌握Redis的主从模式搭建 - 掌握Redis的哨兵模式搭建 - 掌握Redis的集群搭建 - 掌握Redis的缓存穿透、缓存雪崩、缓存击穿 - 掌握Redis的过期策略和淘汰策略 - 掌握Redis的存储机制 - 掌握Redis的实现方式 - 掌握 Java操作Redis API |
ElasticSearch |
- ES介绍 - ES安装(ES、Kibana、IK分词器) - ES的索引操作 - ES的文档操作 - Java连接ES并操作文档 - ES的基本查询 - ES的其他查询 - ES的聚合查询 - Filter查询 - ES的高亮查询 - ES的统计查询 - ES的GEO查询 - ELK |
- 掌握Docker安装ElasticSearch - 掌握倒排索引概念 - 理解ElasticSearch的术语概念 - 掌握ElasticSearch索引管理 - 掌握ElasticSearch文档管理 - 掌握ElasticSearch各种查询方式 - 掌握ElasticSearch聚合函数 - 理解ElasticSearch文档底层读写原理 - 掌握Spring访问ElasticSearch |
SpringBoot |
- SpringBoot介绍 - SpringBoot快速入门 - SpringBoot项目结构 - SpringBoot启动类 - SpringBoot配置文件 - SpringBoot常用配置 - SpringBoot整合Mybatis - SpringBoot整合Jsp - SpringBoot整合Swagger2 - SpringBoot定时任务 - 源码剖析 |
- 掌握Spring 项目结构 - 掌握Spring Boot整合其他技术步骤 - 掌握Spring Boot中异常页面和处理 - 掌握Spring Boot 单元测试 - 掌握Spring Boot项目打包部署 - 掌握Spring Boot常见的整合 |
RabbitMQ |
- RabbitMQ介绍 - RabbitMQ安装 - RabbitMQ架构及通讯范式介绍 - RabbitMQ-HelloWorld - RabbitMQ-Work - RabbitMQ-Publish&Subscribe - RabbitMQ-Route - RabbitMQ-Topic - SpringBoot整合RabbitMQ - RabbitMQ事务&Confirm - RabbitMQ消息Properites - 死信队列 |
- 了解MQ的概念 - 掌握RabbitMQ的安装 - 掌握 Rabbitmq内部角色 - 掌握Spring Boot集成RabbitMQ - 掌握RabbitMQ的常见交换器 - 掌握Spring AMQP - 掌握RabbitMQ常见面试题 |
SpringCloud |
- 微服务架构 - SpringCloud介绍 - Eureka入门 - Eureka安全性 - Eureka高可用 - Eureka源码分析 - Robbin介绍 - Robbin基本使用及配置 - Robbin源码分析 - 手写负载均衡 - Feign介绍 - Feign的入门 - Feign的参数传递注意事项 - Feign源码分析 - Hystrix介绍 - Hystrix的线程池和信号量选择 - Hystrix的超时时间 - Hystrix的断路器 - Hystrix的其他介绍 - Hystrix源码分析 - Zuul介绍 - Zuul过滤器入门&服务别名&忽略服务&版本区分 - Zuul过滤器的API详解 - Zuul的降级 - Zuul的动态路由思路 - Zuul源码分析 - Sidecar整合非Java程序 - Stream整合消息队列 - Stream消息可靠性 - Stream重复消费 - Config介绍 - Config入门 - Config实现动态配置 - 服务追踪介绍 - 服务追踪整体实现 - 整个SpringCloud架构回顾 |
- 了解什么是注册中心 - 了解Eureka注册中心特点 - 掌握Eureka注册中心的搭建 - 掌握Eureka注册中心集群的搭建 - 了解什么是Ribbon中心 - 了解集中式与进程内负载均衡的区别 - 掌握Ribbon常见的负载均衡策略 - 了解什么是Feign中心 - 掌握Feign的请求参数处理方式 - 掌握Feign的性能优化 - 掌握Feign的负载均衡配置 - 掌握 Feign 降级 - 了解什么是Hystrix - 掌握什么是服务降级 - 掌握限流 - 掌握 Hystrix 实现原理 - 掌握 Hystrix 核心参数 - 掌握什么是服务熔断 - 掌握基于Feign的服务雪崩处理 - 掌握使用可视化监控中心 - 了解什么是分布式配置中心 - 掌握使用Gitee搭建分布式配置中心 - 掌握通过配置中心客户端方位配置我文件 - 掌握网关的概念 - 掌握网关的基本使用方式 - 掌握网关的 API - 掌握网关降级 - 掌握动态路由 - 掌握基于消息驱动的流式编程 - 掌握 Cloud Stream 基本使用 - 掌握服务的链路追踪和问题定位 - 掌握 Sleuth 使用 - 掌握 ZipKin 使用 |
Zookeeper |
- ZK介绍 - ZK安装及ZK架构 - ZK集群搭建及投票 - ZK基本操作命令 - ZK在Java中的基本操作(Curator&Zookeeper) |
- 了解什么是Zookeeper - 掌握Zookeeper的安装 - 掌握ZNode数据结构 - 掌握使用Zookeeper实现配置文件中心 - 掌握Java操作Zookeeper - 掌握Zookeeper监听机制 - 掌握Zookeeper集群的安装 - 熟悉Zookeeper集群的选举算法 |
分布式锁 |
- ZK在Java中实现监听 - 分布式锁介绍 - ZK实现分布式锁原理 - ZK实现分布式锁 - Redis实现分布式锁原理 - Redis实现分布式锁 - Redission实现分布式锁 |
- 掌握 JVM 同步锁局限性 - 掌握分布式解决问题场景 - 掌握 Zookeeper 实现分布式锁 - 掌握 Zookeeper 分布式锁原理 - 掌握 Redis 实现分布式锁 - 掌握 Redis 分布式锁原理 |
分布式任务 |
- 分布式任务介绍 - Elastic-Job实现分布式任务 |
- 掌握定时任务的问题点 - 掌握分布式定时任务解决方案 - 掌握 Elastic-Job 实现分布式任务 - 掌握分布式任务的漂移方案 |
分布式事务 |
- 分布式事务介绍 - 两段提交(原理) - 三段提交(原理) - TCC(原理) - 基于MQ实现终一致性 - LCN |
- 掌握现有事务的问题 - 掌握分布式事务问题点 - 掌握分布式解决方案 - 掌握 CAP 理论 - 掌握 LCN 实现分布式事务 |
授权认证 |
- OAuth2 简介 - OAuth2 应用场景 - Spring Security OAuth2 授权模式 - Spring Security OAuth2 认证服务器 - Spring Security OAuth2 使用内存存储令牌 - Spring Security OAuth2 使用 JDBC 存储令牌 - Spring Security OAuth2 使用 Redis 存储令牌 - Spring Security OAuth2 资源服务器 - RBAC 简介 - Spring Security OAuth2 自定义认证 - Spring Security OAuth2 简单模式 - Spring Security OAuth2 密码模式 - Spring Security OAuth2 授权码模式 - Spring Security OAuth2 客户端模式 - Spring Security OAuth2 令牌的刷新 - WebSocket - 微信支付 |
- 掌握分布式登陆解决方案 - 掌握互联网开放登陆方案 - 掌握单点登陆 - 掌握 Spring Security使用 - 掌握 OAuth2 授权模式 - 掌握 Spring Security OAuth2使用 |
课程细类 | 课程内容 | 掌握能力 |
---|
HDFS |
- Hadoop相关概念 - Hadoop的历史 - Hadoop的版本 - HDFS内部组件 - Hadoop单机版 - HDFS伪分布式安装 - HDFS全分布式安装 - HDFS的工作机制 - HDFS读流程 - HDFS的写流程 - HDFS的Shell |
- 了解Hadoop相关概念和历史 - 熟练搭建Hadoop伪分布式和完全分布式 - 掌握Hadoop内部组件 - 掌握HDFS读写流程 - 掌握HDFS的Shell命了操作HDFS分布式文件系统 |
Kafka |
- Kafka的基本概念、 - Kafka的发展历史 - Kafka的应用背景 - JMS规范介绍 - Kafka的组件介绍 - Kafka集群部署 - Kafka的常用操作命令 - Kafka文件存储机制 - topic中partitioner的分布 - Kafka文件存储方式 - Kafka分区中的Segment - Kafka怎样查找消息 - Kafka是怎么做到消息快速存储的 - 如何消费已经消费过的数据 - Kafka分区和消费者的关系 - Kafka的topic数据如何同步副本 - 如何设置生存周期 - Zookeeper如何管理Kafka - Kafka常见问题 - Kafka的API |
- 了解Kafka基本概念和发展历史 - 熟练JMS规范介绍 - 掌握使用Kafka场景 - 掌握Kafka内部核心组件 - 掌握Kafka文件存储机制 - 掌握topic中partitioner的分布 - 掌握Kafka消费流程 - 掌握如何设置Kafka的topic数据同步和副本设置 - 熟练ZooKeeper如何管理Kafka - 掌握Kafka常用API的使用 |
Flume |
- flume简介 - flume安装与测试 - SpoolDir - Memory - HDFS整合测试 - Flume+Kafka的整合测试 |
- 了解flume基本概念和安装 - 熟练SpoolDir和Memory - 掌握flume和HDFS整合 - 掌握flume和Kafka整合 |
Hive |
- Hive是什么 - Hive的特点 - Hive架构简述 - Hive和Hadoop的关系 - Hive的安装部署 - 配置Hive的远程模式 - 数据库基本操作(库、表) - 表类型详解、数据仓库概念 - Hive的分区表概念 - Hive的分区表案例 - Hive的分区类型详解 - Hive的排序 - Hive的内置函数 |
- 了解Hive基本概念 - 熟练Hive架构和部署方式 - 掌握Hive操作 - 掌握Hive分区和Hive分表 - 掌握Hive排序和内置函数 |
YARN |
- YARN是什么 - YARN的设计思想 - YARN架构图 - YARN安装 - YARN基本命令 |
- 了解YARN的基本概念 - 熟练YARN架构和安装 - 掌握YARN的调度流程 - 熟练YARN的基本操作命了 |
Scala |
- 引言 - Scala来源 - Scala语言特点 - 函数式编程 - 静态语言和动态语言 - 强类型和弱类型 - Windows下的环境配置 - Scala解释器 - Scala集成环境配置 - 编码规范 - 变量 - 数据类型 - 操作符 - 表达式 - 循环 - 定义方法 - 数组集合 - 模式匹配和样例类 - 高阶函数 - 隐式转换和隐示参数 |
- 了解Scala语言基本概念 - 了解Scala语言和Java语言之间的区别 - 熟练函数式编程规范 - 掌握Scala基本语法 - 掌握Scala进阶语法 - 掌握Scala中方法和函数 - 掌握Scala中高阶函数和隐式转换和隐式参数 |
Spark |
- 大数据架构体系 - 架构详解 - Spark简介 - Saprk安装包下载 - Spark运行模式 - Spark集群安装 - RDD的设计背景 - RDD三个基本特性(分区,不可变,并行操作) - RDD运行原理 - RDD之间的依赖关系 - Stage的划分 - RDD 的结构(Partitions,SparkContext,SparkConf,Partitioner,Dependencies,Checkpoint,Preferred Location,Storage Level,Iterator) - RDD在Spark架构中的运行过程 - 创建RDD的两种方式 - Transformation算子 - Action算子 - 简单算子演示 - 进阶算子演示 - Spark-JDBC输入输出 - Spark-Submit - Spark Streaming概述 - Spark Streaming的原理介绍 - 用Spark Streaming实现单词计数 - 用Spark Streaming实现按批次累加功能 - Spark Streaming结合Kafka案例实现 - Streaming消费Kafka数据的两种方式 - 如何数据的一致性 |
- 了解Spark在大数据中体系 - 熟练Spark分布式集群安装 - 掌握RDD概念和核心操作方法 - 掌握Transformation算子和Action算子 - 掌握SparkStreaming实时数据处理 - 掌握SparkStreaming消费Kafka数据一致性 |
ClickHouse |
- 交互式查询 - OLAP场景 - ClickHouse介绍 - 列式存储 - 数据压缩 - 多核心并行处理 - 向量引擎 - 数据索引 - 适合在线查询 - 支持SQL - 不足之处 - 表引擎(merge tree) - clickhouse-client方式 - 表操作 - SQL语法 SELECT查询 - JDBC方式数据操作 |
- 了解ClickHouse基本概念 - 熟练交互式查询和OLAP场景 - 掌握列式存储、数据压缩、多核心并行处理 - 掌握向量引擎、数据索引、适合在线查询 - 掌握clickhouse-client方式 - 掌握表操作、SQL语法 SELECT查询和JDBC方式数据操作 |
大数据物联网平台 |
- SpringCloud 微服务组件 - RabbitMQ 消息中间件 - Redis 缓存 - netty NIO - GateWay 网关 - HDFS分布式文件系统 - Zookeeper协调服务 - YARN资源管理 - Flume离线数据采集 - Kafka消息中间件数据通道 - Hive数据仓库 - SparkStreaming实时数据处理 - Elasticsearch全本检索 - ClickHouse普通查询 - Azkaban定时任务调度 |
- 提升微服务组件熟练程度 - 掌握分布式锁的使用 - 掌握解决分布式事务 - 掌握分布式故障分析解决能力 - 掌握高并发解决能力 - 掌握项目监控能力 - 掌握物联网协议 - 掌握 Netty 长连接 - 熟练HDFS分布式文件系统 - 熟练Zookeeper协调服务 - 熟练YARN资源管理 - 掌握Flume离线数据采集 - 掌握Kafka消息中间件数据通道 - 掌握Hive数据仓库 - 掌握SparkStreaming实时数据处理 - 熟练Elasticsearch全本检索 - 熟练ClickHouse普通查询 - 熟练Azkaban定时任务调度 |
绿野户外旅行网
智慧社区
化运国内
畅顺达物流
千锋教育
分布式商城系统
兜儿帮
多学科联合项目
每期学科时长2周,每天2课时,总计20课时
在线直播授课+一对一技术答疑+教辅平台录播
课程阶段 | 课程内容 | 课程案例 | 掌握技能 |
---|
天 | Java概述与环境搭建 |
Java语言的介绍 Java语言的特点 Java技术体系平台 搭建 Java开发环境 JDK 的安装与配置 开发个Java 应用程序 Java 程序的执行原理 DOS命令 |
- 了解Java语言发展史 - 了解Java语言的特点 - 掌握环境搭建 - 了解DOS命令 - 掌握手动安装JDK,配置环境变量 - 掌握个java程序 - 掌握Java基本命令 - 掌握Java命名规范 - 掌握变量的作用和定义的方式 - 能根据实际情况选择使用8种基本数据类型 - Scanner的使用 |
第二天 | 变量与注释 |
注释的使用 变量的声明与使用 变量内存空间分配与原理 标识符的概念命名规范 课堂案例:打印你自己的信息 |
|
第三天 | 数据类型与控制台输入 |
变量的数据类型 基本数据类型之间的转换 键盘输入 课堂案例:通过键盘输入,打印你喜欢的电影名 课堂案例:通过键盘输入,打印你的高考成绩 |
|
第四天 | Java的运算符 |
算术运算符 赋值运算符 关系运算符 逻辑运算符 三元运算符 表达式 课堂案例:求全家人的总年龄。平均年龄 课堂案例:求一个四位数的每个位上的数字 课堂案例:给一个分数,判断是否及格 课堂案例:给一个年份判断是否是闰年 课堂案例:给一个年份判断是否是闰年 课堂案例:int a,b;请判断b是不是a的因子 课堂案例:模拟超市购物 |
- 掌握算术运算符、赋值运算符 - 掌握关系运算符和逻辑运算符 - 掌握数据类型之间的转换 - 掌握if语句和switch语句的区别和使用场合 |
第五天 | if选择结构 |
课堂案例:读入一个整数,如果是1~5之间,则分别输入5个福娃的名字,否则输出"北京欢迎你"。 “贝贝”、“晶晶”、“欢欢”、“迎迎”和“妮妮” 课堂案例:使用boolean类型,定义一个性别。true表示男,false表示女。 判断性别如果是true,表示男。就输出“是男人就。。。。。。” 课堂案例:模拟登录,键盘上输入用户名和密码,如果用户名是admin密码是123,或者用户名是zhangsan密码是zhangsan123,都表示可以登录。否则打印登录失败。 课堂案例:给定一个年龄,如果大于18岁,打印出,你已经是个大人了,要对自己负责 课堂案例:判断成绩是否满分,如果满分,奖励一部手机,否则代码抄100遍。 课堂案例:给定一个性别,如果是男,就去男厕所,如果是女,去女厕所。。 课堂案例:给一个数字,正数,负数,零。 课堂案例:给定一个成绩: [0,59],不及格,买苹果 [60,69],及格,奖励苹果皮儿 [70,79],中等,奖励个苹果 [80,89],良好,奖励苹果手机 [90,100],,奖励个苹果本 课堂案例:给定一个年龄和性别,判断是否可以结婚。 男:不能小于22周岁 女:不能小于20周岁 |
|
switch分支结构 |
课堂案例:使用switch实现简易版计算器 课堂案例:判断一周的食谱 每天吃啥 周一:麻辣烫 周二:拌面 周三:炸酱面 周四:热干面 周五:火锅 周六:麻辣香锅 周日:方便面 |
||
第六天 | 循环结构与流程控制关键字 |
for循环 while循环 do-while循环 break语句 continue语句 课堂案例:求1-10的和 课堂案例:输出1-100中7能被3整除不能被5整出的数字,并统计数量 课堂案例:行酒令:逢7过。 课堂案例:打印九九乘法表 课堂案例:打印三角形 课堂案例:打印菱形 课堂案例:求水仙花数 课堂案例:百元百鸡 |
- 掌握三种循环的书写格式以及执行顺序 - 掌握break和continue循环流程控制关键字 - 掌握使用循环解决复杂问题 - 掌握嵌套循环的使用与熟悉嵌套的循环的应用场景 |
第七天 | 方法与方法组成的应用 |
方法的使用 方法的参数 方法的返回值 课堂案例:统计2020年的总天数 课堂案例:设计方法求n的阶乘 课堂案例:猜数游戏 扩展:经典问题,猴子分桃 扩展:经典问题:斐波那契数列 扩展:设计一款游戏: 剪刀,石头,布,猜拳游戏 扩展:万年历 |
- 掌握方法的组成 - 掌握方法的声明与使用 - 掌握方法的参数定义与使用 - 掌握方法的返回值与return关键字的使用 |
第八天 | Swing桌面应用 |
JFrame,Jpanel,JButton等基本组件的使用 事件监听 flappy bird(飞扬的小鸟)项目代码的实现 实现界面背景 实现地面移动 实现柱子移动 实现小鸟上下飞动 计算小鸟碰撞柱子,地面,天空等的算法实现 统计游戏得分 小鸟的飞动的键盘事件 添加背景音乐 |
- 掌握JFrame,Jpanel,JButton等基本组件的使用 - 掌握桌面应用程序实现方式 - 掌握程序添加背景音乐 |
第九天 | 网络 |
Http网络请求的原理 网络数据请求 下载图片 下载json数据 |
- 掌握网络基础 - 掌握网络原理 - 掌握图片下载方式 - 掌握json解析 - 图标创建与展示 - 数据缓存 |
第十天 | 数据分析 |
json解析 图表创建和展示 配置文件 设置数据缓存 |
课程分类 | 课程名称 | 掌握能力 | 解决问题 |
---|
企业开发流程 |
项目分析 用户故事 流程分析 |
- 掌握标准的企业开发流程 - 掌握跨部门需求对接流程 - 掌握部门间上下游协同规范 - 掌握代码开发、约定俗成的规范 |
- 对企业项目的开发流程有明确认知,可以快速融入工作 |
部门合作 |
同事间沟通 跨部门协作 前后端联调 |
- 对公司内部部门沟通合作有了解,快速上手不同技术部门的合作基础以及共性问题,并可以有效减少因为沟通带来的一系列关联问题 | |
代码规范 |
类规范 方法规范 代码缩进 命名规范 注释规范 异常规范 |
- 规范的代码可以促进团队合作 - 规范的代码可以减少bug处理 - 规范的代码有助于代码审查 - 规范的代码可以降低维护成本 - 养成代码规范的习惯,有助于程序员自身的成长 |
|
敏捷开发 |
敏捷开发流程 敏捷开发核心价值 敏捷开发原则 看板使用 迭代计划 |
- 掌握敏捷开发原则 - 掌握近远期迭代规划 - 掌握项目进度把控工具 - 掌握项目发布、规则、流程 |
- 敏捷开发就是想解决瀑布模型这样的重型软件开发存在的问题,用一种轻量的、敏捷的开发方式来概算甚至是替代它。 |
禅道 |
产品发布 项目创建 计划创建 需求建立 燃尽图 bug 平台 |
- 细分需求、任务、缺陷和用例 - 完整覆盖研发项目核心流程 - 完整软件生命周期管理 |
|
项目上线 |
发布顺序确认 灰度发布 diff回归测试 |
- 解决项目如何发布,如何新,熟练掌握发布流程 | |
线上项目问题预案 |
单点故障方案 缓存崩溃方案 线上异常方案 |
- 掌握压力测试 - 掌握单点故障解决 - 掌握项目实时远程监控 |
- 解决项目在生产环境中遇到的问题如何解决,如何提前做好预案,减少带来的问题后果 |
性能监控 |
JMX 介绍 JMX监控 Java 进程 JMX 监控远程 tomcat |
- 监控项目资源状况,了解程序运行状态 监控程序的健康状态,随时针对运行时的具体情况作出具体反映 | |
状态监控 |
服务健康状态监控 服务负载监控 服务异常监控 |
课程阶段 | 课程目录 | 课程介绍 | 掌握能力 |
---|
企业初认知 |
公司类型 企业组织架构 企业岗位发布及招聘流程 企业招聘途径 对标IT职业人的综合素养和技术 |
从准职业人到标准职业人,综合素养和技能缺一不可,如何选择适合自己的平台成就以后的职业提升? 本课程以当下IT企业公司的文化、架构、管理、要求为切入点,并结合当下公司招聘的流程和招聘要点进行分析,让学员一开始树立未来职场目标的同时,能提前做到知己知彼,稳握进入职场的入场券。 | 通过本课程学习熟悉公司类型,组织架构和本职位相关的工作流程以及公司招聘常用哪些招聘平台等信息,让学员对公司有了初步认知,清晰目标,走出舒服区,努力修炼技能,拿到职场入场券。 |
市场行情分析及职业发展 |
市场行情分析 岗位招聘需求分析 职业生涯规划 技术网站拓展 |
本课程通过分析市场行情,把握每一季的行业动态以及深度剖析招聘岗位需求,直击招聘需求背后的需求,在把握时机、掌握企业招人动机的前提下规划学习从而规划自己的职业生涯,走上事业巅峰。 | 通过本课程的学习了解当下招聘平台国内各个城市的招聘需求数量、薪资分布岗位职责等内容并且360度解读一名程序员的职业生涯发展路线。对从事岗位有了具体、细致的了解,从而有了清晰的规划职业。 |
企业需求及职场规则 |
企业软需求 情商提升 职场规则 |
当代大学生常说的一句话“毕业即失业”,随着市场经济的深入,正在进入“后学历时代”,企业用人目的明确,本课程重点讲职场“潜规则”让学员在进入职场之前掌握职场生存、提升的精华,从而规避掉职场陷阱,穿越事业成功的新途径。 | 本课程重点从公司考察的硬实力和软实力出发分析需要掌握的技能,同时纵向横向三位一体的从态度、言行、微笑等细节及职场潜规则等方面解读让准职业人了解职场法则。 |
求职礼仪及面试常见问题 |
求职礼仪 薪资构成解读 社保及合同解读 其他职场常见问题 |
职场礼仪可以提高人文素质,塑造你具有高尚的精神境界和高品位的文化境界。本课程核心关键字:沟通、情绪、压力、态度等旨在改变人的价值观、人生观、个性,提高并维护自我职业形象,并延伸了很多学员在薪资以及社保等常识问题进行精讲,360度为职场护航。 | 本课程重点讲解着装、谈话、仪容、薪资构成以及五险一金、合同等方面讲解,从个人形象的打造到熟悉法律法规保护个人权益,进行解读,为能进入职场保驾护航。 |
课程大类 | 课程细类 | 掌握能力 | 解决问题 |
---|
Hbase | HBASE JAVA API |
- 掌握HBASE服务的连接 - 掌握Namespace操作 - 掌握Table DDL - 掌握Table DML |
- 海量数据存储 - 准实时查询 - HBase本身没有单点故障,可用性非常高 |
HBASE 过滤器 |
- 掌握SingleColumnValueFilter - 掌握RegexStringComparator - 掌握SubStringComparator - 掌握BinaryComparator - 掌握BinaryPrefixComparator - 掌握FamilyFilter - 掌握QualifierFilter - 掌握ColumnPrefixFilter - 掌握MultipleColumnPrefixFilter - 掌握ColumnRangeFilter - 掌握RowFilter - 掌握FirstKeyOnlyFilter - 掌握PageFilter |
||
布隆过滤器 |
- 掌握布隆过滤器由来 - 掌握布隆过滤器应用场景 - 掌握布隆过滤器原理 - 掌握布隆过滤器在HBASE中的应用 |
||
Kafka | kafka环境部署 |
- 掌握kafka单机版安装 - 掌握kafka多broker集群安装 |
-
Kafka主要用途是数据集成,或者说是流数据集成,以Pub/Sub形式的消息总线形式提供 - 提供Pub/Sub方式的海量消息处理。 - 以高容错的方式存储海量数据流。 - 数据流的顺序。 |
kafka的架构 |
- 掌握kafka的分布式模型 - 掌握topic中的partition的存储分布 - 掌握kafka分区中的segemnt - 掌握kafka的topic副本同步 |
||
kafka操作 |
- 掌握主题创建 - 掌握查看主题 - 掌握发送消息 - 掌握消费消息 - 掌握查看消费位置 - 掌握删除主题 |
||
kafka的API |
- 掌握Producer API - 掌握Consumer API - 掌握Connect API代码 |
||
Jsoup | 获取html | - 掌握HttpClient |
- Java 爬虫。 - 从一个URL,文件或字符串中解析HTML,使用DOM或CSS选择器来查找、取出数据,可操作HTML元素、属性、文本 |
选择器 | - 掌握css/jQuery选择器语法 | ||
遍历元素 | - 掌握Elements迭代 | ||
DOM操作 |
- 掌握获取文本 - 掌握获取html - 掌握获取属性 |
||
Nacos | Nacos 和 Eureka 的区别 |
- 掌握Nacos简介 - 掌握Nacos安装 - 掌握Nacos和其他注册中心对比 |
- 服务发现和服务健康监测 - 动态配置服务 - 动态 DNS 服务 - 服务及其元数据管理 |
Nacos之服务配置中心 | - 掌握服务配置中心 | ||
Nacos之命名空间 |
- 掌握命名空间 - 掌握Group 分组 - 掌握DataID |
||
Nacos 之Namespace | - 掌握Namespace空间 | ||
Nacos集群 |
- 掌握Linux 安装 Nacos - 掌握Nacos 搭建集群 - 掌握配置持久化 |
||
Sentinel | Sentinel 简介 |
- 掌握Sentinel 简介 - 掌握Sentinel 安装 |
- Sentinel 主要以流量为切入点,从流量控制、熔断降级、系统负载保护等多个维度来帮助用户提升服务的稳定性 |
Sentinel 规则 | - 掌握Sentinel 流控规则 - 掌握Sentinel QOS - 掌握Sentinel 限流排队 | ||
Sentinel 预热 | - 掌握Sentinel预热防冲击 | ||
Sentinel 资源 | - 掌握Sentinel Resources | ||
Sentinel 降级 |
- 掌握降级简介 - 掌握响应时间 RT - 掌握降级比例 |
||
Sentinel 熔断 |
- 掌握熔断降级 - 掌握熔断 fallback - 掌握熔断 blockhandler - 掌握整合其他 |
||
seata | seata基本使用 |
- 掌握分布式事务 - 掌握seata 完成分布式事务 |
- 以并且对业务 0 侵入的方式,解决微服务场景下面临的分布式事务问题。 |
seata原理 | - 掌握seata 原理讲解 | ||
服务器测试 | 性能测试 |
- 掌握性能测试 - 掌握可靠性测试 - 掌握失败测试 |
- 解决分析服务器上线和短板的能力,提升服务器设置优化水平 |
压力测试 |
- 掌握负载测试 - 掌握压力测试 - 掌握配置测试 - 掌握并发测试 - 掌握容量测试 |
||
服务网格化 | Service Mesh |
- 掌握服务网格化发展 - 掌握服务网格化优点 |
-
随着应用的越来越大,微服务暴露出来的问题也就随之而来了,微服务越来越多,管理越来越麻烦,随之而来的服务发现、负载均衡、Trace跟踪、流量管理、安全认证等等问题 - 掌握服务网格化就是为了解决这么问题 |
kubernetes |
- 掌握kubernetes介绍 - 掌握kubernetes 安装 - 掌握kubernetes 配置网络 - 掌握kubernetes运行容器 - 掌握kubernetes 通过资源运行容器 - 掌握kubernetes 数据卷 |
||
istio |
- 掌握istio介绍 - 掌握istio架构 - 掌握K8S 安装istio - 掌握流量管理 - 掌握istio 网关 - 掌握istio 认证 |
||
Redis 源码分析 | 跳跃列表 |
- 掌握跳跃表节点 - 掌握跳跃表结构 |
- 对 Redis 的内部原理进行详细理解,可以加深入的理解 redis 的实现,来提升对 redis 的优化能力 |
压缩表 |
- 掌握压缩列表的存储结构 - 掌握结构体 - 掌握遍历压缩列表 |
||
quicklist |
- 掌握quicklist简介 - 掌握数据存储 - 掌握数据压缩 - 掌握常用API |
||
动态字符串 |
- 掌握数据结构 - 掌握创建字符串 - 掌握释放字符串 - 掌握拼接字符串 |
||
Netty | 服务端/客户端 |
- 掌握服务端创建 - 掌握客户端创建 - 掌握连接通信 |
- 主要解决长连接,异步通信的问题,可以通过 netty 来实现通信,物联网等加丰富的功能场景 |
Channel |
- ChannelHandler - ChannelHandlerContext - ChannelPipeline - ChannelFuture |
||
ByteBuf |
- 掌握ByteBuf |
||
Codec |
- Encoder - Decoder |
||
EventLoop | - 掌握EventLoop | ||
传输POJO | - 掌握传输对象 | ||
数据库引擎实现分析 | InnoDB特性 | - 掌握插入缓冲 - 掌握两次写 - 掌握自适应哈希索引 - 掌握异步IO - 刷新邻接页 | - 对 MySQL 实现细节有深入理解,对数据库的执行过程有深入研究,可以提升数据库优化能力 |
日志文件 |
- 掌握错误日志 - 掌握慢查询日志 - 掌握查询日志 - 掌握二进制日志 |
||
索引算法 |
- 掌握InnoDB存储引擎索引 - 掌握数据结构与算法 - 掌握B+树 - 掌握聚集索引 - 掌握辅助索引 - 掌握B+树索引的分裂 |
||
锁 |
- 掌握lock与latch - 掌握InnoDB存储引擎中的锁 - 掌握锁的类型 - 掌握锁的算法 - 掌握锁问题 |
||
性能调优 |
- 掌握选择合适的CPUh - 掌握不同的文件系统对数据库性能的影响h - 掌握索引优化 |
||
领域驱动模型 | 运用领域模型 | - 掌握有效建模的要素 - 掌握深层模型 - 掌握UBIQUITOUS LANGUAGE - 掌握绑定模型和实现 |
- 能够对现在的微服务架构设计有深入的了解,对设计模式有熟练的应用,加提升项目微服务化能力 |
模型驱动设计的构造块 | - 掌握分离领域 - 掌握LAYERED ARCHITECTURE - 掌握HE SMART UI“反模式” |
||
软件中所表示的模型 | - 掌握关联 - 掌握ENTITY建模 - 掌握设计标识操作 |
||
建模范式 | - 掌握对象范式流行的原因 - 掌握对象世界中的非对象 |
零基础小白怎么学Java?
计算机专业应届生好入门吗?
参加Java培训有年龄限制吗?
转行参加Java培训能学会吗?
参加Java培训有前途吗?
女生能学好Java开发吗?
好程序员讲师能力怎么样?
学习Java有哪些优势?
好程序员学习氛围怎么样?
Copyright 2011-2023 北京千锋互联科技有限公司 .All Right 京ICP备12003911号-5 京公网安备 11010802035720号