身为一个程序员小白,指望可以系统的学习java,但总感受无从下手,不知道该学习什么.这应该是全部java程序员入门思考的第一个问题了吧!网上看到两篇关于java学习路线帖子总结的很好,初版是比较简单明了的,适合想快速入门的新手,第二版则是很是详细的,适合自己有一点点java代码的基础,时间相对充裕且指望详细深刻的了解java的新手.(文章取自网上帖子,若有打扰,联系备注出处,由于我如今已经找不到原文出处了)最后声明,本人决定边学习边更博,目前更新周期根据我的工做强度和学习内容随机,一样是小白,且但愿学习java的小伙伴跟我一块儿学习吧,期待与你互相监督,互相探讨!html
Java基础java
推荐看书+实践写代码
推荐书籍:Java核心技术卷1 基础知识 原书第10版git
Java重点部分程序员
基本语法
类、接口
面向对象思想及面向对象三大特性:封装、继承、多态
泛型
反射、动态代理
多线程
集合web
Java web正则表达式
Servlet&JSP 推荐书籍:Head first servlet and JSP
Tomcat使用
HTML、JavaScript、AJAX
HTTP协议
XML和JSON
Mavensql
Java框架数据库
Spring框架:
IOC、AOP
注解
Mybatis
Spring MVC
Spring Boot
Spring cloud编程
Java进阶数组
JVM(Java虚拟机)推荐书籍:深刻理解Java虚拟机
Gc(垃圾回收)
分布式技术
=================================================================
JAVA学习大纲
Java基础 (Java开发介绍、Java数组、Java面向对象、经常使用基础类、集合、IO流、多线程、异常、反射)
JavaWeb(HTML五、CSS三、JavaScript、MySQL、JDBC链接池、Servlet、JSP、AJAX、jQuery、Bootstrap)
Java框架(Spring、Spring MVC、MyBatis、SVN、Git、Maven、SpringBoot)
Java基础内容涉及:Java开发介绍、Java数组、Java面向对象、经常使用基础类、集合、IO流、多线程、异常、反射
DOS经常使用命令
JVM、JRE、JDK之间的关系
Java开发环境的搭建:安装JDK,配置环境变量
Java入门程序(Java的开发流程)
Java的注释,标识符、标识符的命名规范
Java基本数据类型
变量和常量的定义及初始化
Java的运算符
运算符的优先级
Java分支语句之if…else
循环的嵌套
方法的定义
方法的形参和实参
方法的递归调用
Java 数组的定义
Java 数组的声明
数组的优点与局限
数组的遍历访问(普通循环,加强for循环)
数组元素的顺序查找
数组元素的冒泡法排序
Arrays工具类的使用
二维数组
面向对象设计思想
面向对象的分析与设计
Java与面向对象
类中成员变量的定义与意义
构造方法的定义和调用
面向对象的封装特性
局部变量和成员变量的做用域问题
静态属性、静态方法、静态代码块
面向对象的继承特性
继承中构造方法的细节
面向对象的多态特性
抽象方法与抽象类
接口
异常的概念
异常的分类
异常的理解
常见异常介绍
运行时异常
编译时异常
运行和编译异常区别
异常的处理方式之捕获异常
异常的处理方式之抛出异常
异常的处理方式之断点调试
断点调试之引导运行步骤
自定义异常
异常关键字处理
关键字执行流程
异常总结
集合的概念和做用
集合和数组的区别
集合框架体系介绍
集合框架之Collection接口
ArrayList和LinkedList的方法使用
ArrayList和LinkedList各自的工做原理分析原理分析
使用多种方式遍历集合
HashSet和LinkedHashSet各自的工做原理分析
集合框架之Map接口
泛型的使用
Collections工具类的使用
File类的做用
File类中经常使用方法的使用介绍
使用File类操做文件和文件夹
相对路径和绝对路径的介绍
IO流的概念和工做原理
IO流的分类
文件流的使用
转换流的使用
缓冲流的使用
对象流的使用
内存流的使用
使用不一样的流实现文件内容的拷贝
进程和线程的介绍
进程和线程之间的区别与联系
线程实现方式之继承自Thread类
线程实现方式之实现Runnable接口
线程实现方式之线程池
线程的生命周期
线程中经常使用方法的使用
JavaWeb内容涉及:HTML5课程、CSS三、JavaScript、MySQL使用、JDBC链接池、Servlet、JSP、AJAX、jQuery、Bootstrap
html概述
html基本标签
图片标签
超连接标签
表格标签
无序列表标签
有序列表标签
定义列表标签
div标签
语义化标签
表单标签
CSS3简介和用途
CSS3书写规范
CSS3基本语法
CSS3三种使用方式
标签选择器
Id选择器
Class选择器
属性选择器
层次选择器
文字、文本属性
背景、列表属性
尺寸、显示、轮廓属性
浮动、定位属性
盒子模型
CSS3高级属性
JavaScript概述
JavaScript发展史
JavaScript组成
数据类型
运算符
分支语句
循环语句
系统函数、自定义函数、匿名函数
常见事件
数组、字符串、日期对象
正则表达式
BOM对象:window、history、location
DOM概念
DOM操做:建立、修改内容、删除
Css样式操做
数据库简介
MySQL的安装与使用
MySQL客户端和服务器配置
用户权限管理
DDL建立数据库和表
约束与外键
DML实现添加、修改、删除数据
聚合函数、日期函数等
DQL简单查询
排序、分组、筛选
多表查询
子查询
in和exists关键字
分页查询
Mysql SQL语句优化介绍
JDBC概述
JDBC使用步骤
Connection、Statement、ResultSet接口
使用JDBC 完成数据库DML操做
PreparedStatement对象
大数据的操做
批量处理与元数据
事务处理
隔离级别
自定义链接池
DBCP、C3p0链接池
DBUtis工具类
QueryRunner
自定义结果集处理
链接池知识总结
Tomcat与Eclipse的集成开发
什么是Servlet
Servlet的进化史
Servlet的优化过程
Servlet中应用的多线程概念
Servlet接收客户端请求信息
Servlet响应客户端信息
Servlet的生命周期
重定向写法
转发写法
转发和重定向区别
HttpServletRequest获取中文乱码问题
HttpServletResponse响应中文乱码问题
Servlet路径映射问题
Servlet多路径映射
什么是JSP
JSP的内置对象
透析JSP的本质
JSTL+EL
MVC介绍
分层的重要性
Web工程中事务实现
Session的使用
Cookie的使用
web工程中链接池的使用
实现用户的自动登陆
文件的上传、下载
过滤器、 监听器
反射、注解、泛型
综合案例练习
Ajax技术背景
Ajax技术的理解
XMLHttpRequest使用步骤
XMLHttpRequest GET/POST的区别
同步请求&异步请求
同步请求&异步请求的区别
Ajax获取不一样的返回值类型
Ajax使用原生JavaScript和Jquery的区别
Ajax响应状态处理
JSON语法
Java JSON 解析
Java JSON 生成
Java JSON 第三方工具快速解析
JavaScript JSON转换
Jquery JSON转换
Java框架内容涉及:Spring、Spring MVC、MyBatis、SVN、Git、Maven、SpringBoot
框架原理介绍
框架环境搭建
快速入门
建立Bean的方式及实现原理
Bean种类
Bean生命周期
Bean的做用域
Bean的注值方式
整合Junit测试
注解装配Bean
注解装配Bean
AOP思想、原理解剖
AOP底层JDK动态代理
14.AOP编程
16.事务
Spring MVC 概述
使用 @RequestMapping映射请求
请求处理方法签名概述
处理方法签名详细说明
使用 HttpMessageConverter
处理模型数据
数据绑定流程剖析
数据格式化
数据校验
视图和视图解析器
处理方法的数据绑定
视图和视图解析器
文件上传下载
JSON处理
拦截器
MyBatis数据框架介绍
MyBatis对比Hibernate框架
MyBatis配置、查询数据
MyBatis全局配置文件
MyBatis全局配置文件元素详细介绍
Mapper映射文件
MyBatis两种开发方式
MyBatis中别名配置
MyBatis # 和 $ 拼接参数区别
关联查询,动态sql
MyBatis缓存机制、整合ehcache
MyBatis二级缓存处理
MyBatis、Spring、SpringMVC整合
分页插件
MyBatis逆向工程
SVN简介
SVN和Git对比
SVN服务器搭建
SVN建立仓库
SVN建立用户以及分配权限
SVN签出、提交、更新
Eclipse整合svn插件
Idea整合svn插件
使用SVN更新提交
SVN仓库分析
SVN协同修改&冲突解决
SVN代码整合注意事项
SVN权限管理
SVN数据回滚
TortoiseSVN
Maven环境搭建
Maven构建项目
Maven本地仓库配置
Maven中央仓库配置
Maven基本概念
Maven基本命令介绍
Maven于Eclipse整合
Maven于Idea整合
Maven建立web工程
pom.xml、依赖管理
坐标、依赖、生命周期等
Eclipse下的Maven使用
Maven中 继承、聚合
Maven构建SSH/SSM应用
自动部署、持续集成、持续部署