Java 学习路线 先学习 j2se 要学习 j2ee 就要先学习 j2se,刚开始学习 j2se 先建议不要使用 IDE,然后渐渐的过渡到使 用
IDE 开发,毕竟用它方便嘛。学习 j2se 推荐两本书, 《java2 核心技术一二卷》《java 编 , 程思想》《java 模式》 ,
。其中《java 编程思想》要研读,精读。这一段时间是基本功学习, 时间会很长,也可能很短,这要看学习者自身水平而定。 不要被 IDE 纠缠
在学习 java 和 j2ee 过程中,你会遇到五花八门的 IDE,不要被他们迷惑,学 JAVA 的时候, 要学语言本身的东西,不要太在意
IDE 的附加功能,JAVA 编程在不同 IDE 之间的转换是很 容易的,过于的在意 IDE 的功能反而容易耽误对语言本身的理解。目前流行的
IDE 有 jbuilder, eclipse 和 eclipse 的加强版 WSAD。 用好其中一个就可以了, 推荐从 eclipse 入手
j2ee。 因为 Jbuilder 更适合于写 j2se 程序。 选择和学习服务器使用配置 =D R t 当你有了 j2se 和 IDE
的经验时,可以开始 j2ee 的学习了,web 服务器:tomcat,勿庸置疑, tomcat 为学习 web
服务首选。而应用服务器目前主要有三个:jboss、weblogic、websphere。 有很多项目开始采用 jboss,
并且有大量的公司开始做 websphere 或 weblogic 向 jboss 应用服 务器的移植(节省成本) ,这里要说的是,学习
tomcat 和 jboss 我认为是首选,也是最容易 上手的。学习服务器使用配置最好去询问有经验的人(有条件的话) ,因为他们或许一句话
就能解决问题,你自己上网摸索可能要一两天(我就干过这种傻事) ,我们应该把主要时间
放在学习原理和理论上,一项特定技术的使用永远代替不了一个人的知识和学问。 学习 web 知识 Jj=/ G T
如果你是在做电子商务网站等时,你可能要充当几个角色,这是你还要学习: .'l:8SxT?L html,可能要用到 dreamwave 等
IDE。 ZO(T u%xU Javascript,学会简单的数据校验,数据联动显示等等 Zw cmUq b],MA_pI?= J2eeAPI
学习 (x 6 lxJ' 学习 j2eeAPI 和学习服务器应该是一个迭代的过程。 6t FbC\gV 先学习 jsp 和 servlet
编程, 这方面的书很多, 我建立看 oreilly 公司的两本 《jsp 设计》 《java 和 servlet 编程》 ,oreilly
出的书总是那本优秀,不得不佩服。 S{=>TQn\2H 学习 jdbc 数据库编程,j2ee 项目大多都是 MIS
系统,访问数据库是核心。这本应属于 j2se 学习中,这里拿出来强调一下。 W ,9cn M?2 学习 jndi api,它和学习 ejb
可以结合起来。 xVql.;/Bf 学习 ejb api,推荐书《精通 ejb》 Y@;4 PEH$
经过上面的这些的学习,大概可以对付一般的应用了。 $'>. rfV|6 有人说跟着 sun 公司的《j2ee
tutorial》一路学下来,当然也可以。 K 7 ~sgu#o aQ?DVu3#U, 学习 ejb 设计模式和看代码(最重要)
e?(P& THu 设计模式是练内功,其重要性可以这么说吧,如果你不会用设计模式的话,你将写出一堆使 用了 ejb 的垃圾,
有慢又是一堆 bug, 其结果不如不用 ejb 实现 (ejb 不等于 j2ee) k 8 N}1Bv
无论学习什么语言,都应该看大量代码,你看的代码量不到一定数量,是学不好 j2ee 的 =u 5 ! [KD
目前有很多开源的工程可以作为教材: n\[ 9cS.`= jive 论坛 "v t < petstore sun 公司 \ jS W
dune sun 公司 MFUzFS |, 等等,研读一个,并把它用到自己的工程中来。 Vehapm;4(e z2a9nh k_9 J2ee
其他学习 (+ _]= 当你渐渐对 j2ee 了解到一定深度时,你要开始关注当前领域中的一些技术变化,J2ee 是一
块百家争鸣的领域,大家都在这里提出自己的解决方案,例如 structs,hiberate,ofbiz 等等,
学习这些东西要你的项目和目标而定,预先补充一下未尝不可,但不用涉及太深,毕竟学习 原理和理论是最最重要的事。 a G VS f)z
o}3 Java 认证和授权服务(JAAS)1.0 } > {
]% s 学习上面的某些 API 要以你的项目而定,了解所有他们总之是有好处的 /M9 3(aE 上面印证了大家说的一句话,java
语言本身不难学,但是技术太多,所以学 java 很费劲。 回想一下,基本上每个初学者,在刚学习 java 的时候可能都会问别人这么一句话,你怎么
知道的哪个方法(api)在哪个包里的?呵呵,无他,唯手熟尔。 ======================================
J2EE 总体的学习计划 第一部分: JAVA 语言基础知识。包括异常、IO 流、多线程、集合类、数据库。(切记基础知识一定要 时时刻刻巩固)
要求:对 java 的封装,生命周期等有一定的了解; 异常------掌握 try-catch-finally 的使用 IO
流------掌握字节流、字符流和对象序列化的处理.。熟练使用各种输入、输出流类 ( InputStream 、 OutputStream 、
FileInputStream 、 FileOutputStream 、 DataInputStream 、 DataOutputStream 、
BufferedInputStream 、 BufferedOutputStream 、 Reader 、 Writer 、
InputStreamReader、OutputStreamWriter、BufferReader、BufferedWriter、
ObjectInputStream、 ObjectOutputStream) 。 多线程-------掌握多线程实现的两种实现方法, 分别是继承
Thread 类与实现 Runnable 接口。
理解线程间的同步与互斥。 集合类-------掌握 Set、 Collection、 Map、 List、 Iterator、
Enumeration 接口的使用, 掌握 HashSet、 ArrayList、Vector、HashMap、HashTable 类的使用。
数据库-------掌握 JDBC API 的使用,包括 DriverManager 类、Connection 接口、Statement
类和接口、PreparedStatement 接口、ResultSet 接口。 还有了解 java 反射机制,对 Java1.5
的新功能必须有了解与使用,泛型等。. 另外-------理解 Unicode、GB2132、GBK、UTF-8、ISO8859 编码方式。
参考: 《Java 编程思想》 、张孝祥视频教学。 第二部分: JAVA 网络编程。包括
Socket、RMI、HTML、XML、JSP、JavaBean、Servlet。 要求:Socket--------了解 java.io
包中的套接口类和服务器套接口类的使用。 RMI--------掌握 RMI 基本工作原理、掌握定义远程服务接口类、远程接口类、客户端调用
类和部署、编译 RMI 应用程序。 HTML--------了解 HTML 语言的语法、各种标签。 JSP-------掌握 JSP2.0
语法、隐含对象、EL、JSTL1.1、JSP 自定标签。 JavaBean-------理解 JavaBean 的特点和事件模型。
XML--------了解 XML 语言的语法、DTD、Schema。 Servlet---------掌握 HTTP 协议、 Servlet
工作过程、 Servlet 会话跟踪、 Servlet 过滤器、 Serlvet 事件侦听器、配置 web.xml。
UML-------掌握用例图、类图、活动图、顺序图、状态图。 Aglet-------学会安装使用 tahiti 服务器,掌握 Aglet
API。[以后再学,在彭老师的项目才会用 到] 开发工具------掌握 Rational Rose 、ant 、cvs
版本控制、myeclipse、dreamweave 等开发工 具使用。 另外-------学习过程中学会使用
Tomcat、JBoss/Weblogic 服务器 参考书: 《JSP2.0 技术手册》林上杰编著; 《深入体会 Java Web
开发内幕---核心基础》 在 JSP 上不要花太多时间,在时间放在 servlet 多一些. 第三部分: 流行 MVC 架构和 Java
对象持久化技术。包括 webwork、Spring、Hibernate 要求:MVC-------理解 MVC 设计模式、处理过程。
webwork-------理解 webwork 实现 MVC 的机制、 工作流程。 掌握配置 webwork 应用、 webwork 控制器组
件、webwork 应用的国际化、异常处理、webwork 标签库。(其实很多遗留系统用 的是
Struts,但现在越来越少人用了,所以我鼓励你们学 webwork,但要必须要了解一下 Struts)
Spring-------掌握控制反转(IoC) 、面向方面编程(AOP) 、事务服务(JTA)、邮件服务 (JavaMail)
、持久化服务(DAO、JDBC、ORM)、远程服务(RMI)。 Hibernate--------理解
ORM,掌握映射对象标识符、映射关系(一对多、多对多、一对一) 、 映射类型、检索策略、检索方式、数据库事务与并发、管理 Hibernate
的缓存。 学习过程:先学习 webwork2,再学习 Hibernate,最后学 Spring。 下面的东西有时间了解一下:
测试/敏捷开发-----关注测试,掌握 Junit 单元测试框架,以及现在两个流行的 mock 工具 EasyMock/JMock,熟
悉其中一种。 (提示:测试非常重要,有效的测试可以减少很多开发的
时间,当然刚开始觉得不耐烦,好像没有必要写测试代码,一定要说服自己尝试写测试代码, 或多或少的) UNIX 系统------了解最主要的
shell 编程,及主要的相关的命令行操作. AJAX-----了解基本的 javascript,csss,以及 ajax 常用的用法,还有
JSON 框架. (ajax 的框架太多,但不要花太多时间去学,因为你不知道公司用不用 ajax,而且用的那一
框架你没有办法知道,所以懂最基础就可以了) 参考书: 《webwork in action 中文版》 《精通 Struts》《精通
Hibernate》孙卫琴著, 、 《Spring 技术手册》林信良著 《JUnit in action 中文版》Vincent Massol
著的 书籍只是用来入门的,其他的工具必须多上英文网址,尽量多看一些英文文档,提高自己 的水平,同时有空的时候也可以下载的一些开源项目的文档。
最后一句话:无论什么技术,学了不要以为自己多牛,学技术只是为了更好提高自己做项
目的能力以及提升自身的水平。你做的项目效果怎样才能最终看出你自身的水平。
首 先 给 楼 主 梳 理 一 下 自 学 的 顺 序 : J2SE 、 数 据 库 ( Oracle 或 者 MySQL ) JDBC 、 、
HTML_CSS_JAVASCRIPT、XML、Servlet & JSP、HTTP 协议基础(GET POST) 、Struts、
Spring、Hibernate 、EJB3.0、SOA; 其次我觉得楼主可以从网上 down 一些视频来看,这样效率更高(我觉得比看书效率高)
, 当然看书也是一方面,我不建议楼主先看诸如 Thinking in java 之类的书籍,最好是有了一 定 J2SE
的基础之后再看,这样效果会更好。 网上有很多关于 java 培训的视频, 比如尚学堂、 传智播客、 MLDN、 达内等等, 你在 GOOGLE
上搜索这些名字即可下载他们提供的学习视频。另外也有很多不错的 BBS,比如储备宝、 浪曦网、北风学习网等等有你想要的一切资料
Java 学习路线图, 专为新手定制的 Java 学习计划建议时间:2010-07-09 10:55:52 来源:网络 作 者:未知
点击:173 次 怎么学习 Java,这是很多新手经常会问我的问题,现在我简单描述下 一个 Java 初学者到就业要学到的一些东西: 首先要明白
Java 体系设计到得三个方面:J2SE,J2EE,J2ME(KJAVA) 。J2SE,Java 2 Platform Standard
Edition,我们经常说到 怎么学习 Java,这是很多新手经常会问我的问题,现在我简单描述下一个 Java 初学者到就 业要学到的一些东西:
首先要明白 Java 体系设计到得三个方面:J2SE,J2EE,J2ME(KJAVA) 。J2SE,Java 2 Platform
Standard Edition,我们经常说到的 JDK,就主要指的这个,它是三者的基础,属于 桌面级应用开发,这部分如果学得好很容易拓展
J2EE 和 J2ME。 J2ME,The Micro Edition of the Java 2 Platform。主要用于嵌入式
Java,如手机,PDA 等等。J2EE,Java 2 Platform, Enterprise Edition,就是所谓的企业级
Java,适合企业的大型应用开发。 J2SE: 新手最初学习的时候先要从 J2SE 开始学起,所包含的内容主要分为:面向对象概念的
理解、Java 基本语法的学习,Java 桌面图形界面应用程序的开发,掌握常用的 Java API 等 (关键是要学会怎样查阅) 。
重点:Java 基本语法(循环结构,数据类型,数组,运算符等) 、Swing,awt,事件机制、 文件输入输出流处理等
难点:面向对象思想的理解(接口、类等) 、线程、socket 网络编程等 视频教程推荐:孙鑫的 Java 基础视频教程、张孝祥的 Java
基础视频教程,讲的都很细,而 且这两位老师在教学方面都有很好的经验。 J2EE: 在学习了 J2SE 之后,你可以尝试着慢慢过渡到
J2EE,当然,学习 J2EE 海需要很 多非 JAVA 技术的支撑,比如数据库技术,网页编程技术等等,待会我会详细介绍这两方面
的内容。J2EE 有三个必学的框架,如果你说你学了 J2EE,但又不会这三个框架的话,那会 让人笑掉大牙,这三个框架分别是
Struts、Spring 和 Hibernate,虽然这三个框架应用很广, 但不代表这三个框架就代表了 J2EE,J2EE
还有很多其他的东西,比如 EJB,作为一款重量 级(此重量级不是指重量级选手那个意思,此重量级非彼重量级)框架,虽然这个应用慢慢
的再被其他框架所取代,但 EJB3.0 的出现也给它带回一些生机,作为一个分布式应用的框 架,也是大家要去学习和了解的知识。 当然,刚才说到 J2EE 包含的范围很广,即使我把我所了解的所有技术说出来,也 并不能代表
J2EE,这是一个很深很广的学问,需要大家以后再工作的时候慢慢去发现了。 我所了解的还包括: JDBC:Java
数据库连接对象,基础中的基础,Hibernate 也只是对它的封装而已 JNDI: Java 命名与目录接口,J2EE 重要规范之一
EJBS: 上面已经提到过了 RMI: 提供远程调用方法的支持,主要用于程序分布式开发 JMS: Java 消息服务,中间件技术 JAVA
IDL: 提供 J2EE 平台与 CORBA 交互能力和互联能力的技术 JTS: 组件事务监视器 JTA: 事务划分的一个技术
JAVAMAIL: Java 中的邮件技术 JAF: Java 启动框架,没研究过 Log4j,一款日志处理的框架应用
Junit:单元测试的好帮手 freemarker、 velocity:两款不错的模板引擎 与 Flash 的交互 Flex:目前很多的 SNS
应用就是使用到了这个技术 Web services:想知道我们论坛天气预报的效果是怎么做的吗?请关注这个技术
SOA:面向服务架构,未来技术发展的趋势之一 …… 不过前面介绍到得这些都不是 J2EE 的基础,是属于框架应用级别的.要真正把上面
说到的知识掌握好,还是的学习 J2EE 最核心的东西:JDBC、JSP、 servlet 和 JavaBean,后面三 个也是学习 SSH
的基础(Struts\Spring\Hibernate 的简称).鉴于 J2EE 的内容太过复杂,建议大家 最初只学习: JSP,
servlet 和 JavaBean,等这个基础掌握好再把 SSH 学习了,再对其他 J2EE
技术有个大致的了解就可以出去找工作了。当然,找工作的前提除了把 Java 学习好,还会 有一些其他的技术也是必须要掌握的。 -_-
我很简单,Java 却要求我学这么多复杂的东西。除了这些技术的东西,在这阶段,大家更
多的是会接触到比如设计模式的东西,比如工厂模式、桥梁模式、单例模式等等,还要学习 建模思想(比如 UML
建模等等)和软件生命周期等等。这些是升华大家编程思想的手段和 途径。 数据库技术:
数据库几乎是程序中不可或缺的一部分,在整个软件开发中更是占据了重要作用.数据
库在整个软件中扮演的是地基的角色,你要修房子,就要先打好地基,你要做软件,就要先设计 好的数据库.目前数据库几乎都是关系型数据库,代表的有:
SQL Server,目前最新的好像是 2008,我不是很喜欢追赶时髦,用的还是 2005,不过也很不错了, 在此之前还有 2000.
MySQL,最知名的开源数据库之一,我很喜欢它的小巧耐用,学过 SQL SERVER 数据库再学它, 无师自通,易如反掌.
ORACLE.甲骨文公司的产品,大型数据库,正版的一般公司买不起.只有看看了,不过现在 Java 开发
60%都是会使用到这个数据库,再加上现在甲骨文已经把 sun 公司收购了,JAVA 和 ORACLE
得关系更加暧昧,各位得多花些时间在这上面了. 除了这些,你还应该了解一些桌面应用软件开发用到的数据库,比如说 sqlite。你在制作安
装程序的时候可以把这个数据库打包进你的安装程序。 网页编程基础:
网页编程基础要学的内容也比较多,但主要集中在以下这三个技术之上,大家每天看的 各种样式的网页都是它们呈现的: HTML:超文本标记语言 CSS:
层叠样式表 Javascript:浏览器客户端脚本语言 现在更是流行各种 JavaScript 库,比如:Jquery、ExtJs
等,你要是会其中的某一个库的使用, 找工作 so easy。 J2ME:
如果你在学习了以上技术还不过瘾,可以再学习手机程序的开发,就我个人看来,开 发手机程序技术其实蛮简单的, 难点在于优化,
比如怎么让你写的程序尽量的节约手机资源, “代码诚可贵,手机价更高“,所以不得不比 PC 机多考虑很多成本和实用性问题。J2ME
的学习的话,切忌不要单纯的再模拟器上测试,一定要找真机测试,真机和模拟器的效果之
间差别是很大的。更多手机开发技术,有兴趣的朋友可以和我一起探讨。 开发工具: 开发工具的选择主要还是看大家的习惯,我个人比较喜欢使用
eclispe,功能很强大,也 很好拓展其他的功能。当让初学你也可以选择 JCreator,或者最好就直接用记事本。等你熟 悉了 Java
代码之后,就可以使用 JBuilder、eclispe 或者 netbeans 这一类的工具了。
先说到这里先,以后大家一起完善这个帖子。尽量再给大家整理一些学习的资源在这
里。也欢迎大家一起整理我文章中提到的一些技术资源和开发工具。最后,再和大家分享一 句话:生命欣欣向荣,唯奋斗不息。也和大家分享一幅 Java
学习路线图:
-_- 我很简单,Java 却要求我学这么多复杂的东西。除了这些技术的东西,在这阶段,大家更
多的是会接触到比如设计模式的东西,比如工厂模式、桥梁模式、单例模式等等,还要学习 建模思想(比如 UML
建模等等)和软件生命周期等等。这些是升华大家编程思想的手段和 途径。
J
一:J2SE 面向对象-封装、继承、多态 内存的分析 递归 集合类、泛型、自动打包与解包、Annotation IO 多线程、线程同步
TCP/UDP AWT、事件模型、匿名类 正则表达式 反射机制 2:数据库(Oracle 或者 MySQL) SQL 语句 多表连接,内外连接,
子查询等 管理表、视图、索引、序列、约束等 树状结构存储 存储过程、触发器 数据库设计三范式、 3:JDBC JDBC 基础 连接池
树状结构存储与展现 DataSource & RowSet JDBC 连接 Oracle 及 MySQL
4:HTML_CSS_JAVASCRIPT html、css、javascript 基础语法 JavaScript Form 判断 Dom
编程基础(事件处理等) JS 常用效果如 TreeView、下拉联动等 JS 学习方法 JS 调试方法 DreamWeaver 初步(建立
HTML、Table、Form、CSS)等 5:Servlet & JSP tomcat 基础 servlet 基础 web.xml
配置基础 web application 的结构 servlet 生命周期 request response 等常用方法
ServletContext 类 HTTP 协议基础(GET POST) Cookie Session Application JSP
的几种语法(包括 JSTL 等)注意在项目中练习,不要拘泥于语法细节而裹步不前。 6:Struts 多层架构理论 Model 1 and
Model 2 Struts 基本概念 MVC Action 与业务逻辑类的关系 在 Struts 与 JSP 之间传递数据 Struts
处理流程(控制流) Struts TagLib(了解常用的) JSTL ActionForm 字段收集 上传文件 类型转换 DTO 动态
Action Form 验证框架 ActionForward 转发与重定向 动态生成 ActionForward 全局与局部的
ActionForward Action Forward Scope UnknownActionMapping Action 的线程安全
I18N 如何切换语言环境 Struts 异常处理机制 程序处理 自动处理 自定义异常处理器 Struts 的多模块配置 7:XML (XML
L、XSLT/DTD、SCHEMA 等基础的概念、关于 Java 的编程可以暂时扔在一边) 8:Hibernate OR Mapping 原理
Hibernate 基础开发步骤 Hibernate 基本接口(重点 Session) 普通属性映射
关联关系映射 Native SQL inverse lazy cascade 继承关系映射 HQL 性能优化 一级缓存 二级缓存 查询缓存
事务与并发 悲观锁、乐观锁 OpenSessionInView CurrentSession (至于
JTA、联合主键、自然主键、动态主键、Any 类型 Creteria Queries Intercepter and Event
自定义类型等,可以暂时扔在一边) 9:Spring IOC/DI Spring 配置 Spring 架构 AOP 及 Spring AOP
声明式事务(AOP) Spring + Hibernate Spring 支持 Web Scope (其他的 Spring
模块对于自学来说可以暂时扔在一边) 10:EJB3.0 J2EE 架构基础(JTA JMS 等) EJB 基础(地位及基本理论、分类等)
Annotation Ant 编译与部署 EJB Session Bean EJB 的依赖注入 Persistence API (可以用
JBoss 学习 EJB3.0)
阅读(1665) | 评论(0) | 转发(0) |