JAVA学习路线规划
来源:互联网 发布:程序员必备生活装备 编辑:程序博客网 时间:2024/04/27 16:29
参加工作已经两个年头多了,虽然接触了很多知识,但是总是感觉什么也不会。仔细思考了一下,感觉应该是工作中没有积累,导致很多东西做了就忘记了,在遇到相同的问题不能得心应手。在这里整理一下新年的学习路线,也是从网上找来的,感觉比较适合自己。今年就按照这个计划,把直线学到的没学到的梳理一下,做到胸有成竹。
java学习第一阶段:
- java开发前奏
(1)计算机基本原理
(2)java语言发展简史及开发环境搭建
(3)体验java程序开发,环境变量设置
(4)了解程序执行的过程
(5)了解相关反编译工作
(6)eclipse开发工具安装和使用
(7)javadoc使用说明 - java基础语法
(1)java语法格式
(2)常量和变量,变量的作用域
(3)方法和方法的重载
(4)运算符,程序流程控制
(5)数组和操作数组的类
(6)对数组循环遍历以及针对数组常用的查询、排序算法原理
(7)java实现查询、排序数组算法 - 面向对象编程
(1)理解对象的本质,以及面向对象,类与对象之间的关系,如何用面向对象的思想来分析解决现实生活中的问题,并用java程序编写出来
(2)如何设计类,设计类的基本原则,类的实例化过程,类元素:构造函数、this关键字、方法和方法的参数传递过程、static关键字、内部类、java的垃圾对象回收机制
(3)对象的三大特性:封装、继承、多态。子类对象的实例化过程、方法的重写和重载、final关键字、抽象类、接口、继承的优点和缺点。对象的多态性:子类和父类之间的转换、父类指向子类的引用、抽象类和接口在多态中的应用、多态的优点,常用的设计模式代码编写
(4)什么是异常?异常的捕捉和抛出,异常捕捉的原则,finally的使用,package的应用,import关键字 - 多线程应用
(1)多线程的概念
(2)如何在程序中创建多线程(Thread,Runnable)
(3)线程安全问题
(4)线程同步问题
(5)线程之间的通信
(6)线程死锁问题剖析 - javaAPI详解
(1)javaAPI介绍
(2)String和StringBuffer
(3)基本数据类型和它们的封装类型
(4)System和Runtime类
(5)Date和DateFormat类
(6)常用集合类:Collection、List、Set、Map、ArrayList、Vector、LinkedList、HashSet、TreeSet、HashMap、TreeMap、Interator、Enmueration - IO技术
(1)什么是IO
(2)File及其相关类
(3)字节流InputStream和OutputStream
(4)字符流Reader和Writer,以及相应的缓冲流和管道流
(5)字节和字符的转化流、包装流以及常用包装类的使用
(6)javaIO性能分析 - 网络编程
(1)java网络编程
(2)网络通信协议TCP/UDP/IP
(3)Socket编程
(4)网络通信常用应用层协议:HTTP、FTP等。
(5)WEB服务器的工作原理 - java高级特性
(1)递归程序编写
(2)java高级特性:反射、代理、泛型、枚举、java正则表达式API详解和应用
java学习第二阶段:
- 数据库基础
- SQL语句
(1)数据库的创建,表的创建,修改,删除,查询,索引的创建,主从表的建立,数据控制授权和回收,事务控制,查询语句以及运算符的详解,sql中的函数使用 - 多表连接和子查询
(1)等值和非等值连接,外连接,自连接;交叉连接,自然连接,using子句连接,完全外连接和左右外连接,子查询使用以及注意事项 - 触发器、存储过程
(1)触发器和存储过程使用场合 - 数据库设计优化
(1)WHERE子句中的连接顺序,选择最有效率的表名顺序,SELECT子句中避免使用 ‘ * ‘ 计算记录条数等等 - 数据库备份和移植
(1)移植技巧,备份方案;导入导出等
java学习第三阶段:
- jdbc基础
(1)JDBC Connection、Statement、PreparedStatement、CallableStatement、ResultSet等不同类的使用 - 连接池技术
(1)了解连接池的概念,掌握连接池的建立、治理、关闭和配置 - OMR与DAO封装
(1)对象关系映射思想,jdbc的dao封装,实现自己的jdbc
java学习第四阶段:
- xml技术
(1)使用jdom和dom4j来对xml文档的解析和生成操作,xml 的作用和使用场合 - html/css
(1)Java掌握基本的html标签的格式和使用,css层叠样式表对div的定义,实现对网站布局的基本实现 - javascript
(1)了解javascript的基本语法以及相关函数的使用,并结合html页面实现流程控制和页面效果展示
(2)什么是异常 异常的捕捉和抛出 异常捕捉的原则 finally的使用,package的应用 import关键字 - jsp/servlet
(1)Servlet和SP 技术、上传下载、 Tomcat 服务器技术、servlet 过滤器和监听器 - JSTL/EL
(1)JSTL核心标签库、函数标签库、格式化标签库、自定义标签技术、EL表达式在jsp页面的使用 - ajax及框架技术
(1)了解和属性原生态的ajax的使用,ajax使用的场合,使用ajax的好处,ajax框架jquery渲染页面效果和相关的强大的第三方类库,dwr如何和后台服务进行数据传输,以及页面逻辑控制等 - Json高级应用
(1)Java使用json支持的方式对字符串进行封装和解析,实现页面和java后台服务的数据通信 - FCKEDitor编辑器
(1)FCKEditor在线编辑器技术、配置、处理图片和文件上传 - javaMail技术
(1)了解域名解析与MX记录、电子邮件工作原理、邮件传输协议:SMTP、POP3、IMAP、邮件组织结构:RFC822邮件格式、MIME协议、邮件编码、复合邮件结构分析、JavaMail API及其体系结构、编程创建邮件内容:简单邮件内容、包含内嵌图片的复杂邮件、包含内嵌图片和附件的复杂邮件 - JfreeChart报表
(1)统计报表;图表处理
java学习第五阶段:
- Strust2.x
(1)struts2框架的工作原理和架构分析,struts-default.xml与default.properties文件的作用,struts。Xml中引入多个配置文件。OGNL表达式、Struts2 UI和非UI标签、输入校验、使用通配符定义action、动态方法调用、多文件上传、自定义类型转换器、为Action的属性注入值、自定义拦截器、异常处理、使用struts2实现的CRUD操作的案例 - Hibernate3.x
(1)Hibernate应用开发基础; ORM基础理论; 关系映射技术; 性能调优技术; 性能优化 一级缓存 二级缓存 查询缓存 事务与并发 悲观锁、乐观锁 - Spring3.x
(1)Spring IoC技术; Spring AOP技术; Spring 声明事务管理; Spring 常用功能说明,spring3.0的新特性, Spring整合struts2和hibernate3的运用 - Log4j和Junit
(1)Logging API; JUnit单元测试技术; 压力测试技术:badboy 进行测试计划跟踪获取以及JMeter压力测试 - 在线支付技术
(1)完成支付宝的支付接口的在线支付功能
java学习第六阶段:
- openJPA技术
(1)JPA介绍及开发环境搭建、单表实体映射、一对多/多对一、一对一、多对多关联、实体继承、复合主键、JPQL语句、EntityManager API、事务管理,了解一下jpa2.0的新特性以及应用 - lucene搜索引擎
(1)了解全文搜索原理、全文搜索引擎、什么是OSEM、OSEM框架Compass、基于使用Lucene使用Compass实现全文增量型索引创建和搜索、探索Lucene 3.0以及API - Excel/PDF处理技术
(1)java对excel和pdf文档分别利用poi和itext来进行解析和生成。此技术在企业级系统的报表中经常使用 - OA工作流技术JBPM
(1)工作流是什么、JBPM介绍、JBPM的主要用法、各类节点的用法、任务各种分派方式、JBPM的整体架构原理、工作流定义模型分析、运行期工作流实例模型分析、数据库表模型分析、流程定义管理、流程实例监控、对JBPM的相关接口进行封装,构建自己的工作流应用平台等 - webservice技术
(1)WebService技术原理、WebService技术的应用、Soap服务的创建与管理、WSDL描述文档规范、UDDI 注册中心运行原理;使用Axis和Xfire创建WEB服务、Webservice客户端的编写、使用TCPMonitor监听SOAP协议、异构平台的整合 - Linux
(1)Linux 系统安装,卸载、linux 使用的核心思想、linux下的用户管理,文件管理,系统管理、程序的安装,使用,卸载。linux下作为server的基本应用:web服务器,j2ee服务器,ftp服务器的安装和项目的部署
java学习第七阶段:
- 如何构建一个高性能网站详解
(1)什么样的网站需要高性能,高性能的指标体系,构建高性能网站需要做哪些工作,注意哪些细节 - SSI技术
(1)什么是SSI,使用他有什么好处,什么样的系统才使用SSI,SSI技术详解和使用,应用到项目中 - 生成静态页技术
(1)什么是静态页,为什么需要静态页以及带来的好处,生成静态页的模版技术Velocity和Freemark,生成静态页的访问规则等 - 缓存技术
(1)为什么使用缓存技术,oscache缓存技术的介绍和使用,memcached缓存技术的介绍和使用、两者缓存技术的比较和如何去使用 - 经典web服务器
(1)什么是web服务器,什么是javaweb服务器,他们存在什么关系,当前技术主流中常用的web服务器有哪些, web服务器apache和nginx的应用 - nginx架构实践
(1)什么是反向代理,负载均衡以及集群,在nginx中如何实现这些高性能的系统架构
0 0
- JAVA学习路线规划
- Java学习路线规划
- Java学习路线规划
- 综合整理规划java学习路线
- 我的java学习路线及规划
- Linux学习路线规划
- Python学习路线规划
- Android 学习路线规划
- Java工程师路线规划
- java学习必须有明确的路线规划!
- 近期的学习路线规划
- 实习前学习路线规划
- 音视频学习路线规划
- 机器学习路线及规划
- 【Java】Java学习路线
- java技术达人养成记<2>五年java学习路线规划建议
- java技术达人养成记<2>五年java学习路线规划建议
- JAVA学习路线
- Android usb学习笔记:Android AOA协议设备端 流程总结
- oracle如何修改 序列当前的最大值?
- Unity FairyGUI测试过程
- 二叉树根据前序和中序确定二叉树
- 【机器学习中的数学】贝叶斯概念学习
- JAVA学习路线规划
- mysql相似于oracle的to_char() to_date()方法
- PHP WEB 安全
- [译] 第三章 MCMC
- 浅谈HTTP中Get与Post的区别
- Android Studio如何把jdk设置为1.8
- Tomcat设置虚拟目录的方法
- 表格定义具有无法升级的无效目标命名空间'http://schemas.microsoft.com/sqlserver/reporting/2010/01/reportdefinition'
- android静默安装