如何学j2ee(转自水木清华)

    最近一直由于一些原因,技术上的东西没有学多少,技术一直停滞不前.不过还是学了不少技术以外的东东,毕竟技术并不能解决一切问题.今天浏览水木清华看到了一篇文章,说的是如何学j2ee的,感觉还不错.毕竟是清华的嘛,特此转到这里.让刚接触j2ee的同志们有个参考:


  Java发展到现在,按应用来分主要分为三大块:J2SE,J2ME和J2EE。这三块相互补充,应用范围不同。
J2SE就是Java2的标准版,主要用于桌面应用软件的编程;
J2ME主要应用于嵌入是系统开发,如手机和PDA的编程;
J2EE是Java2的企业版,主要用于分布式的网络程序的开发,如电子商务网站和ERP系统。

1)先学习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程序。

2)选择和学习服务器使用配置
当你有了j2se和 IDE的经验时,可以开始j2ee的学习了,web服务器:tomcat,勿庸置疑,tomcat为学习web服务首选。而应用服务器目前主要有三个: jboss、weblogic、websphere。有很多项目开始采用jboss,并且有大量的公司开始做websphere或weblogic向 jboss应用服务器的移植(节省成本),这里要说的是,学习tomcat和jboss我认为是首选,也是最容易上手的。学习服务器使用配置最好去询问有 经验的人(有条件的话),因为他们或许一句话就能解决问题,你自己上网摸索可能要一两天(我就干过这种傻事),我们应该把主要时间放在学习原理和理论上, 一项特定技术的使用永远代替不了一个人的知识和学问。

3)学习web知识
如果你是在做电子商务网站等时,你可能要充当几个角色,这是你还要学习:
html,可能要用到dreamwave等IDE。
Javascript,学会简单的数据校验,数据联动显示等等

4)J2eeAPI学习
学习j2eeAPI和学习服务器应该是一个迭代的过程。
先学习jsp和servlet编程,这方面的书很多,我建立看oreilly公司的两本《jsp设计》和《java servlet编程》,oreilly出的书总是那本优秀,不得不佩服。
学习jdbc数据库编程,j2ee项目大多都是MIS系统,访问数据库是核心。这本应属于j2se学习中,这里拿出来强调一下。
学习jndi api,它和学习ejb可以结合起来。
学习ejb api,推荐书《精通ejb》
经过上面的这些的学习,大概可以对付一般的应用了。
另外一种学习方法:跟着sun公司的《j2ee tutorial》一路学下来,j2ee-tutorial是很不错的入门教材。

5)学习ejb设计模式和看代码(最重要)
设计模式是练内功,其重要性可以这么说吧,如果你不会用设计模式的话,你将写出一堆使用了ejb的垃圾,有慢又是一堆bug,其结果不如不用ejb实现(ejb不等于j2ee)
无论学习什么语言,都应该看大量代码,你看的代码量不到一定数量,是学不好j2ee的,另外看代码也是一个学习别人良好编程习惯和规范的好方法,有时候你意识不到自己的代码写的有多烂,:)

目前有很多开源的工程可以作为教材:
jive论坛
petstore sun公司
dune sun公司
等等,研读一个,并把它用到自己的工程中来。

6)J2ee其他学习
当 你渐渐对j2ee了解到一定深度时,你要开始关注当前领域中的一些技术变化,J2ee是一块百家争鸣的领域,大家都在这里提出自己的解决方案,例如 struts,hibernate,ofbiz等等,学习这些东西要你的项目和目标而定,预先补充一下未尝不可,但不用涉及太深,毕竟学习原理和理论是最 最重要的事。

7)利用网络资源
java手册 http://www.javaalmanac.com/  极好的一个在线帮助
开源网站 http://www.sourceforge.net/
J2EE讨论 http://www.theserverside.com/

8)学习极限编程
J2EE项目是多人合作的项目,也是调试很困难的一类项目。如果没有良好的项目规划是不能
做好J2EE项目的,了解和项目开发管理相关的知识也有必要
   项目管理:Ant,类似于C语言中make的作用
   版本管理:CVS等,例如wincvs,tortoise cvs
   单元测试:JUnit,摆脱插入main到类中进行调试的原始方法
   压力测试:JMeter,开源工程,简单,易用


目前常见j2eeAPI
 JavaServer Pages(JSP)技术1.2 
 Java Servlet技术2.3 
 JDBC API 2.0 
 Java XML处理API(JAXP)1.1 
 Enterprise JavaBeans技术2.0 
 Java消息服务(JMS)1.0 
 Java命名目录接口(JNDI)1.2 
 Java事务API(JTA) 1.0 
 JavaMail API 1.2 
 JavaBeans激活架构(JAF)1.0 
 J2EE连接器体系结构(JCA)1.0 
 Java认证和授权服务(JAAS)1.0 
   学习上面的某些API要以你的项目而定,了解所有他们总之是有好处的
   上面印证了大家说的一句话,java语言本身不难学,但是技术太多,所以学java很费劲。回想一下,基本上每个初学者,在刚学习java的时候可能都会问别人这么一句话,你怎么知道的哪个方法(api)在哪个包里的?呵呵,无他,唯手熟尔。


--


如果剑法的最高境界是无招胜有招,那么编程的最高境界也应是如此。

你可能感兴趣的:(J2EE)