Javaweb系统学习路线:
Java系统学习路线:
第一阶段 | 技术名称 | 第一阶段: Java 基础,包括 Java 语法,面向对象特征,常见API,集合框架。(基础)
第二阶段:Java API:输入输出,多线程,网络编程,反射注解等,Java 的精华部分。(重点) |
J2SE(java基础部分) | java开发前奏 | 计算机基本原理,Java语言发展简史以及开发环境的搭建,体验Java程序的开发,环境变量的设置,程序的执行过程,
相关反编译工具介绍,java开发工具Eclipse的安装和使用,javadoc的说明。 |
Java基础语法 | Java语法格式,常量和变量,变量的作用域,方法和方法的重载,运算符,程序流程控制,数组和操作数组的类,
对数组循环遍历以及针对数组的常用查找、排序算法原理,最后使用Java程序进行功能实现。 |
|
面向对象编程 | 理解对象的本质,以及面向对象,类与对象之间的关系,如何用面向对象的思想分析和解决显示生活中的问题,
并java程序的手段编写出来。 如何设计类,设计类的基本原则,类的实例化过程,类元素:构造函数、this关键字、方法和方法的参数传递过程、 static关键字、内部类,Java的垃圾对象回收机制。 对象的三大特性:封装、继承和多态。子类对象的实例化过程、方法的重写和重载、final关键字、抽象类、接口、 继承的优点和缺点。 对象的多态性:子类和父类之间的转换、父类纸箱子类的引用、抽象类和接口在多态中的应 用、多态优点。常用设计模式如单利、模版等模式。 什么是异常 异常的捕捉和抛出 异常捕捉的原则 finally的使用,package的应用 import关键字。 |
|
多线程应用 | 多线程的概念,如何在程序中创建多线程(Thread、Runnable),线程安全问题,线程的同步,线程之间的通讯、
死锁问题的剖析。 |
|
javaAPI详解 | JavaAPI介绍、String和StringBuffer、各种基本数据类型包装类,System和Runtime类,Date和DateFomat类等。
常用的集合类使用如下:Java Collections Framework:Collection、Set、List、ArrayList、Vector、LinkedList、Hashset、TreeSet、Map、HashMap、 TreeMap、Iterator、Enumeration等常用集合类API。 |
|
IO技术 | 什么是IO,File及相关类,字节流InputStream和OutputStream,字符流Reader和Writer,以及相应缓冲流和管道流,字节和字符的转化流,包装流,以及常用包装类使用,分析java的IO性能。 | |
网络编程 | Java网络编程,网络通信底层协议TCP/UDP/IP,Socket编程。网络通信常用应用层协议简介:HTTP、FTP等,以及WEB服务器的工作原理。 | |
java高级特性 | 递归程序,Java的高级特性:反射、代理和泛型、枚举、Java正则表达式API详解及其应用。 |
第二阶段 | 技术名称 | 第三阶段:数据库 SQL 基础,包括增删改查操作以及多表查询。Oracle Mysql 二选一吧。(我的项目都是用的 Mysql |
数据库技术 | Oracle 基础管理 | Oracle背景简介,数据库的安装,数据库的用户名和密码,客户端登录数据库服务SQLPLUS,数据库基本概。 |
SQL语句 | 数据库的创建,表的创建,修改,删除,查询,索引的创建,主从表的建立,数据控制授权和回收,事务控制,查询语句以及运算符的详解,sql中的函数使用。 | |
多表连接和子查询 | 等值和非等值连接,外连接,自连接;交叉连接,自然连接,using子句连接,完全外连接和左右外连接,子查询使用以及注意事项。 | |
触发器、存储过程 | 触发器和存储过程使用场合, 通过实例进行详解。 | |
数据库设计优化 | WHERE子句中的连接顺序,选择最有效率的表名顺序,SELECT子句中避免使用 ‘ * ‘ 计算记录条数等等。 | |
数据备份与移植 | 移植技巧,备份方案;导入导出等。 |
第三阶段 | 技术名称 | 第四阶段: JDBC 编程:包括 JDBC 原理, JDBC 连接库, JDBC API,虽然现在Hibernate 比 JDBC 要方便许多,但是 JDBC 技术仍然在使用, JDBC 思想尤为重要。
第五阶段: JDBC 深入理解高级特性:包括数据库连接池,存储过程,触发器,CRM 思想(高级)这个比较不好懂,有时间的可以学习。 |
jdbc技术 | JDBC基础 | JDBC Connection、Statement、PreparedStatement、CallableStatement、ResultSet等不同类的使用。 |
连接池技术 | 了解连接池的概念,掌握连接池的建立、治理、关闭和配置。 | |
ORM与DAO封装 | 对象关系映射思想,jdbc的dao封装,实现自己的jdbc。 |
第四阶段 | 技术名称 | 第六阶段: Servlet 开发,从此开始踏入 JavaWeb 开发的重要一步,包括XML,Tomcat 服务器的安装使用操作, HTTP 协议简单理解,Servlet API 等, Java Web 开发的基础。(重要)
第七阶段: JSP 开发: JSP 语法和标签,自定义标签, EL , JSTL 库了解以及MVC 三层架构的设计模式理念。 |
web基础技术
(项目实战) |
Xml技术 | 使用jdom和dom4j来对xml文档的解析和生成操作,xml 的作用和使用场合。 |
html/css | Java掌握基本的html标签的格式和使用,css层叠样式表对div的定义,实现对网站布局的基本实现。 | |
Javascript | 了解javascript的基本语法以及相关函数的使用,并结合html页面实现流程控制和页面效果展示。
什么是异常 异常的捕捉和抛出 异常捕捉的原则 finally的使用,package的应用 import关键字。 |
|
jsp/servlet | Servlet和SP 技术、上传下载、 Tomcat 服务器技术、servlet 过滤器和监听器。 | |
jstl和EL | JSTL核心标签库、函数标签库、格式化标签库、自定义标签技术、EL表达式在jsp页面的使用。 | |
ajax及框架技术 | 了解和属性原生态的ajax的使用,ajax使用的场合,使用ajax的好处,ajax框架jquery渲染页面效果和相关的强大的第三方类库,dwr如何和后台服务进行数据传输,以及页面逻辑控制等。 | |
JSON高级应用 | Java使用json支持的方式对字符串进行封装和解析,实现页面和java后台服务的数据通信。 | |
Fckeditor编辑器 | FCKEditor在线编辑器技术、配置、处理图片和文件上传。 | |
javaMail技术 | 了解域名解析与MX记录、电子邮件工作原理、邮件传输协议:SMTP、POP3、IMAP、邮件组织结构:RFC822邮件格式、MIME协议、邮件编码、复合邮件结构分析、JavaMail API及其体系结构、编程创建邮件内容:简单邮件内容、包含内嵌图片的复杂邮件、包含内嵌图片和附件的复杂邮件。 | |
JfreeChart报表 | 统计报表;图表处理。 | |
BBS项目实战 | 采用Jquery+dwr+jsp+servlet+Fckeditor+JfreeChart+tomcat+jdbc(oracle) 完成BBS项目的实战。 |
第五经典阶段 | 技术名称 | 第八阶段:三大框架- Spring 、 SpringMVC 、 MyBatis , JavaWeb 的精华部分(重要)
第九阶段:当学习完这些知识后,你就可以深层次的学习一些企业框架, Maven、 redis 、 log4j 等等。 |
web主流框架技术
(项目实战) |
struts2.x | struts2框架的工作原理和架构分析,struts-default.xml与default.properties文件的作用,struts。Xml中引入多个配置文件。OGNL表达式、Struts2 UI和非UI标签、输入校验、使用通配符定义action、动态方法调用、多文件上传、自定义类型转换器、为Action的属性注入值、自定义拦截器、异常处理、使用struts2实现的CRUD操作的案例。 |
hibernate3.x | Hibernate应用开发基础; ORM基础理论; 关系映射技术; 性能调优技术; 性能优化 一级缓存 二级缓存 查询缓存 事务与并发 悲观锁、乐观锁。 | |
spring3.x | Spring IoC技术; Spring AOP技术; Spring 声明事务管理; Spring 常用功能说明,spring3.0的新特性, Spring整合struts2和hibernate3的运用。 | |
Log4j和Junit | Logging API; JUnit单元测试技术; 压力测试技术:badboy 进行测试计划跟踪获取以及JMeter压力测试。 | |
在线支付技术 | 完成支付宝的支付接口的在线支付功能。 | |
电子商务网实战 | 采用spring3+hibernate3+struts2+jquery+dwr+FckEditor+tomcat 完成电子商务网站实战开发。 |
第六进阶阶段 | 技术名称 | 技术内容 |
web高级进阶
(项目实战) |
openJpa技术 | JPA介绍及开发环境搭建、单表实体映射、一对多/多对一、一对一、多对多关联、实体继承、复合主键、JPQL语句、EntityManager API、事务管理,了解一下jpa2.0的新特性以及应用。 |
lucene搜索引擎 | 了解全文搜索原理、全文搜索引擎、什么是OSEM、OSEM框架Compass、基于使用Lucene使用Compass实现全文增量型索引创建和搜索、探索Lucene 3.0以及API。 | |
电子商务网重构 | 此项目采用了Lucene+compass+openJpa+上一版电子商务网站的技术进行重构。 | |
Excel/PDF文档处理技术 | java对excel和pdf文档分别利用poi和itext来进行解析和生成。此技术在企业级系统的报表中经常使用。 | |
OA工作流技术JBPM | 工作流是什么、JBPM介绍、JBPM的主要用法、各类节点的用法、任务各种分派方式、JBPM的整体架构原理、工作流定义模型分析、运行期工作流实例模型分析、数据库表模型分析、流程定义管理、流程实例监控、对JBPM的相关接口进行封装,构建自己的工作流应用平台等。 | |
WebService技术 | WebService技术原理、WebService技术的应用、Soap服务的创建与管理、WSDL描述文档规范、UDDI 注册中心运行原理;使用Axis和Xfire创建WEB服务、Webservice客户端的编写、使用TCPMonitor监听SOAP协议、异构平台的整合。 | |
Linux技术 | Linux 系统安装,卸载、linux 使用的核心思想、linux下的用户管理,文件管理,系统管理、程序的安装,使用,卸载。linux下作为server的基本应用:web服务器,j2ee服务器,ftp服务器的安装和项目的部署。 | |
CRM项目实战 | 此项目能了解和熟悉客户关系管理的基本流程以及功能的实现,采用上面几个阶段学到的主流框架实现,同时加入了JBPM的技术。 |
第七架构阶段 | 技术名称 | 技术内容 |
大型高并发网站优化方案
(项目实战) |
如何构建一个高性能网站详解 | 什么样的网站需要高性能,高性能的指标体系,构建高性能网站需要做哪些工作,注意哪些细节。 |
SSI技术 | 什么是SSI,使用他有什么好处,什么样的系统才使用SSI,SSI技术详解和使用,应用到项目中。 | |
生成静态页技术 | 什么是静态页,为什么需要静态页以及带来的好处,生成静态页的模版技术Velocity和Freemark,生成静态页的访问规则等。 | |
缓存技术 | 为什么使用缓存技术,oscache缓存技术的介绍和使用,memcached缓存技术的介绍和使用、两者缓存技术的比较和如何去使用。 | |
经典web服务器 | 什么是web服务器,什么是javaweb服务器,他们存在什么关系,当前技术主流中常用的web服务器有哪些, web服务器apache和nginx的应用。 | |
nginx架构实战 | 什么是反向代理,负载均衡以及集群,在nginx中如何实现这些高性能的系统架构。 |
一:入门阶段
学习目标:Java程序员
1: 熟悉jdk,jvm,eclipse,安装于配置jdk
2:熟悉并掌握java的基础语法,类,抽象类,接口,内部类等概念
3: java核心编程,如输入输出流,多线程,集合,XML,正则表达式等
4:java图形化编程,如awt,swing
5:java网络编程,Applet,Socket,TCP/IP,NIO等
6:java高级特性,如反射,泛型,自动装箱与拆箱等
二:提高阶段
学习目标:java初级软件工程师
1:网页开发技术,如HTML,CSS,JavaScript,AJAX
2:java与数据库开发技术,如SQL,MySql,Oracle,SQL Server,JDBC
3:JavaWeb核心开发技术,如JavaBean,Servlet,EL等
三:加强阶段
学习目标:Java中级软件工程师
1:Hibernate框架
2:iBATIS框架
3:Struts1框架
4:Struts2框架
5:Spring业务层框架
四:进阶阶段
学习目标:Java高级软件工程师
1:Java Web企业级开发技术,如会话Bean,消息驱动Bean
2:Java Web分布式开发技术,如JTA,JAAS,JNDI
3:Java Web开源技术与框架,如工作流,规则引擎,缓存,报表
五:高级阶段
学习目标:Java系统架构师
1:Java与UML,如对象图,用例图,组件图,部署图
2:Java设计模式:外观、适配单观察者、装饰等
3:Web服务架构:WebService,SCA,SOA,ESB,EAI
4:面向资源架构:ROA,REST
5:面向云架构:COA、SaaS、分布式计算、云计算