Java学习路线

 

一、Java SE                                                                                            

  阶段一

     1、认识java

     2、Java发展史及用户

     3、配置Java环境

          3.1、jdk下载安装

          3.2、配置环境变量

     4、认识JVM

          4.1、了解JVM

          4.2、JVM学习

                 a.引用计数器

                 b.Java四种引用(强、软、弱、虚)

                 c.JVM运行内存分类(程序计数器、Java虚拟机栈、Native方法栈、Java堆、方法区)

                d. 其他

     5、Java企业开发工具

          5.1、eclipse

          5.2、Idea

          5.3、其他

 

  阶段二

     1、数据类型

          1.1、基础数据类型

               a、int / 长度32位

               b、short / 长度16位

               c、byte /长度8位

               d、long /长度64位

               e、double /长度64位

               f、float /长度32位

               g、boolean /true|false

               h、chart /16位

          1.2、引用数据类型

               a、类

               b、接口类型

               c、数组类型

               d、枚举类型

               e、注解类型

     2、基础语法

          2.1、关键字讲解

          2.2、变量/常量

          2.3、注释

               a、单行注释

               b、多行注释

     3、运算符

           3.1、算数运算符(加 +、减 -、乘 *、除 /、求余 %、自增 ++、自减 --)

          3.2、赋值运算符(赋值 =、加等于 +=、减等于 -=、乘等于 *=、除等于 /=、模等于 %=)

          3.3、比较运算符(大于 >、小于 <、等于 ==、大于等于 >=、小于等于 <=、不等于 !=)

          3.4、逻辑运算符(与 &&、或 || 、非 ! 、异或 ^)

          3.5、条件运算符

               a、俗称三元表达式   即:  布尔表达式 ? 表达式1 :表达式2

     4、流程控制

          4.1、if / if else

          4.2、while

          4.3、do while

          4.4、switch

          4.5、for

     5、数组

          5.1、一维数组

          5.2、二维数组

          5.3、三维数组

     6、阶段项目实战

          6.1、打印九九乘法表

          6.2、打印杨辉三角形

          6.3、斐波那契数列练习

 

 

 

  阶段三

     1、面向对象

          1.1、什么是面向对象

          1.2、对象与类的区别

          1.3、类的构造方法

          1.4、类的实例方法

          1.5、如何封装类

          1.6、如何继承类

          1.7、多态

          1.8、抽象类

          1.9、接口

     2、常用类

          2.1、Object

          2.2、String

          2.3、StringBuilder

          2.4、Math

          2.5、Date

          2.6、SimpleDateFormat

          2.7、其他

     3、异常处理

          3.1、什么是异常

          3.2、如何捕捉异常

          3.3、throw 和 throws讲解

          3.4、try catch final 讲解

     4、集合类

          4.1、迭代器/ Iterator

          4.2、Map(HashMap、TreeMap)

          4.3、Collection

               a、Set(HashSet、TreeSet)

               b、List(LinkedList、ArrayList)

     5、IO流

          5.1、字符流

               a、Reader(BufferedReader、InputStreamReader、StringReader、PipedReader、ByteArrayReader、FilterReader)

               b、Writer(BufferedWriter、OutputStreamWriter、StringWriter、PipedWriter、CharArrayWriter、Filter Writer)

          5.2、字节流

               a、InputStream(FileInputStream、FilterInputStream、ObjectInputStream、PipedInputStream、SequenceInputStream、StringBufferInputStream、

                     ByteArrayInputStream)

               b、OutputStream(FileOutputStream、ObjectOutputStream、PipedOutputStream、ByteArrayOutputStream)

     6、多线程

          6.1、Thread / Runnable

          6.2、线程状态讲解(新建、就绪、运行、堵塞、等待堵塞、同步堵塞、其他堵塞)

          6.3、线程常用API使用(start、sleep、yield、join、notify/notify All)

          6.4、线程池

          6.5、线程调度

          6.6、并发和并行的区别

          6.7、同步、异步

     7、反射机制

          7.1、什么是反射

          7.2、关于Class

          7.3、反射类获取对象方式(Class.forName(“com.xxx.Person”)、new Instance)

          7.4、ClassLoader 类加载器

          7.5、反射常用类(Class、Method、Field、Constructor)

     8、注解

          8.1、源码注解

          8.2、编译时注解

          8.3、运行时注解

     9、解析json/xml/html

          9.1、解析XML常用工具(DOM解析、SAX解析、JDOM解析、DOM4J解析)

          9.2、解析JSON常用工具(org.json 解析、net.sf.json解析、json.simple解析、gjson解析、jackson 解析、fastjson解析)

          9.3、解析HTML常用工具(htmlparser解析、Jsoup解析)

     10、网络编程

          10.1、网络通讯协议

          10.2、TCP/IP/UDP协议

          10.3、OSI/TCP IP 参考

          10.4、Socket编程

     11、JDBC编程

          11.1、JDBC原理

          11.2、JDBC连接池

          11.3、JDBCAPI

          11.4、其他

     12、Junit

          12.1、认识Junit

          12.2、Junit环境配置

          12.3、测试框架

          12.4、基本用法

          12.5、常用API

          12.6、编写测试、断言测试、执行测试、忽略测试、时间测试、异常测试、参数化测试、eclipse插件

 

二、Java EE                                                                                   

  阶段一

      1、HTML + CSS

          1.1、HTML(属性、字符集、标签.....)

          1.2、CSS(样式、框模型、背景、定位、边距、......)

     2、JS/JQ

          2.1、JS(数据类型、函数、运算符、流程控制、DOM/BOM对象、......)

          2.2、JQ(基础语法、选择器、DOM操作、常用工具、......)

 

  阶段二

     1、认识Tomcat

     2、Tomcat配置讲解

     3、Tomcat启动与关闭

     4、如何部署项目

 

  阶段三

     1、Servlet、JSP

     2、Http请求方式(GET、POST、DELETE、PUT等)

     3、普通表单提交

     4、文件上传、下载

     5、JSP语法、标签、自定义标签库,EL以及JSTL库

     6、初始Ajax、Ajax原理,请求响应处理等

 

  阶段四

     1、学生管理系统

 

 

三、Java框架                                                                          

     1、Mybatis

          1.1、认识Mybatis

          1.2、Mybatis配置文件讲解

          1.3、Mybatis XML标签使用

          1.4、Session

          1.5、Mapper

          1.6、动态Sql

          1.7、高级查询

          1.8、插件使用

          1.9、分页机制

          1.10、逆向工程

          1.11、集成Spring/SpringBoot

     2、JPA/Hibernate

          2.1、认识Hibernate

          2.2、学习hibernate.cfg.xml配置

          2.3、学***x.hbm.xml映射文件

          2.4、认识Session

          2.5、Session核心API讲解

          2.6、一对一,一对多,多对一,多对多

          2.7、检索策略lazy、fetch、batch等

          2.8、HQL查询

          2.9、二级缓存

          2.10、集成Spring/SpringBoot

          2.11、使用QueryDsl查询

     3、Spring

          3.1、认识Spring

               a、IOC思想

               b、依赖注入

               c、自动装配

               d、Bean生命周期

               e、集合注入

               f、AOP切面编程

               g、事务处理(声明式、注解式)

          3.2、SpringMVC

               a、认识MVC

               b、了解Dispatcher Servlet执行流程

               c、相关配置文件讲解

               d、配置静态文件

               e、拦截器、过滤器

               f、文件上传、下载

          3.3、SpringSecurity

               a、认识SpringSecurity

               b、SpringSecurity简单测试

               c、自定义登录界面

               d、了解认证

               e、异常信息处理

               f、intercept-url配置

               g、Filter

               h、国际化配置

               i、自定义数据库认证

               j、自定义AccessDeniedHandler

               k、Logout、匿名登录

          3.4、SpringBoot

               a、认识SpringBoot

               b、SpringBoot Web开发

               c、SpringBoot 数据访问

               d、SpringBoot缓存支持

               e、SpringBoot 安全管理

               f、SpringBoot日志管理

               g、SpringBoot监控管理

               h、集成Redis 作为缓存源

               i、讲解.properties和.ymal格式

               j、打包部署

          3.5、SpringSession

               a、认识SpringSession

               b、配置redis作为缓存源

     4、权限管理Shiro

          4.1、认识Shiro

          4.2、ini配置讲解

          4.3、session讲解

          4.4、用户登录

          4.5、配置自定义密码加密器

          4.6、过滤器

          4.7、基于URL的权限控制

          4.8、基于角色的权限控制

          4.9、集成Spring/SpringBoot

     5、Maven

          5.1、认识Maven

          5.2、配置POM

          5.3、编译、打包、构建

          5.4、依赖管理

          5.5、集成Eclipse/IDEA

          5.6、配置阿里云私服

          5.7、自己搭建私服

     6、项目管理

          6.1、GIT

               a、认识git

               b、安装配置

               c、工作流程

               d、工作区、缓冲区和版本库

               e、创建仓库

               f、基本操作

               g、分支管理

               h、查看历史

               i、标签

               j、github

          6.2、SVN

               a、认识svn

               b、安装

               c、生命周期

               d、启动模式

               e、创建版本库

               f、检出操作

               g、解决冲突

               h、提交操作

               i、版本回退

               j、查看历史

               k、分支

               l、标签

          6.3、FTP

               a、Server-U搭建

               b、FileZilla搭建

               c、Apache FTP Server搭建

               d、Java操作FTP

          6.4、nginx

               a、认识nginx

               b、nginx配置讲解

               c、如何实现反向代理

               d、如何实现负载均衡

               e、在windows环境配置安装

               f、在linux环境配置安装

          6.5、阿里云服务器项目环境搭建

          6.6、常用插件   lombok

 

 

四、项目实战                                                                       

     1、教务管理系统

     2、用户权限管理系统

     3、商城后台系统

     4、项目分类

          4.1、传统版

               a、SpringBoot

               b、JPA/Mybatis

               c、Shiro

               d、Mysql

               e、Redis

               f、......

          4.2、前后端分离

               a、后端    Spring全家桶

               b、前端    Vue全家桶

     5、项目配置域名部署到云服务

 

 

五、数据库                                                                            

  Mysql

     1、阶段一

          1.1、什么是数据库、关系数据库和非关系数据库区别

          1.2、安装配置Mysql

          1.3、Mysql数据库的特点,为什么用Mysql

          1.4、Mysql基本数据类型

          1.5、Mysql配置文件介绍

          1.6、Mysql服务的启动与停止

          1.7、数据查询语言DQL

          1.8、数据操纵语言DML

          1.9、数据定义语言DDL

          1.10、数据控制语言DCL

     2、阶段二

          2.1、Mysql增删查改

          2.2、深入了解Mysql语句

          2.3、子查询与链接查询

          2.4、模糊查询与精确查询

          2.5、IN、EXISTS、NOT IN、 NOT EXISTS

          2.6、排序order by

          2.7、分页 limit

          2.8、分组 group by

     3、阶段三

          3.1、数学函数讲解

          3.2、字符串函数

          3.3、日期函数

          3.4、if case 函数

          3.5、其他函数

     4、阶段四

          4.1、存储过程

          4.2、触发器

          4.3、自定义函数

          4.4、视图

          4.5、主外键、约束

          4.6、其他

     5、阶段五

          5.1、用户授权、收权等

          5.2、SQL优化

          5.3、Mysql配置文件优化

  

  Redis

     1、认识Redis

     2、Redis数据类型(String、List、Set、HashSet、Sorted-Sets)

     3、Redis事务

     4、运维常用命令

     5、发布订阅

     6、Redis配置文件及优化

     7、集成Spring/SpringBoot

 

 

 

posted @ 2020-10-28 17:43  peiHL  阅读(184)  评论(0编辑  收藏  举报