如何系统地学习 Java EE ?
Java EE的系统学习过程如下:
一、学习J2EE最核心的东西:JDBC、JSP、 servlet和JavaBean,后面三个也是学习SSH的基础(Struts\Spring\Hibernate的简称).鉴于J2EE的内容太过复杂,建议大家最初只学习:JSP, servlet和JavaBean,等这个基础掌握好再把SSH学习了。
二、接触到比如设计模式的东西,比如工厂模式、桥梁模式、单例模式等等,还要学习建模思想(比如UML建模等等)和软件生命周期等等
三、来看看Sun给出的J2EE 相关技术主要分为几大块。
1. Web Service技术
- Java API for XMLProcessing (JAXP)
- Java API for XMLRegistries (JAXR)
- Java API for XML-based RPC(JAX-RPC)
- SOAP with AttachmentsAPI for Java (SAAJ)
2. 组件模型技术(Component Model Technologies)
- Java Servlet
- JavaServer Pages
- JavaServer Faces
- Enterprise JavaBeans
- Java Message Service
- J2EE ConnectorArchitecture
3. 管理技术(Management Technologies)
- J2EE DeploymentSpecification
- J2EE ManagementSpecification
- J2EE Client Provisioning
- Java AuthorizationContract for Containers
4. 其他相关技术(Other J2EE Technologies)
- JDBC
- Java Data Objects (JDO)
- CORBA (Java IDL and JavaRMI-IIOP)
- JavaMail
- Transactions
……
这么多的技术,作为一个初学者,真不知该从何下手。
…
四、下面这些技术是一般J2EE应用开发人员所必须熟练掌握的。Java Server Page,Java Servlet,Enterprise JavaBean,JDBC,Transactions。还有JAXP等XML相关技术,Java Message Service,Java Mail,JDO等等是最好应该掌握的。其他Management Technologies,ConnectorArchitecture等等主要是给容器提供商中间件提供商参考的,应用开发者不需要怎么关心,等用到了再去学习也不迟。
五、J2EE实在是比较庞杂,而EJB,Servlet,这些核心技术是作为每一个J2EE开发人员所需要掌握的。
六、关于servlet,我比较推荐<<CoreServlet and JSP 2Edition>>和<<More Servlets and Java Server Pages>>,第一本是Sun推荐的Servlet教材。第二本是当年Amazon最畅销Java书籍,五星级书籍。这本书机械工业出版社有中文版叫<<Servlet 与JSP权威指南>>,感觉翻译得还可以,第二版好像还没有看到有中文版。两本书都全面系统地介绍了JSP和Sevlet知识,从web服务器配置,JSP,Servlet基本编程,标记库(Tag Lib),过滤器,事件框架都有很好地描述。提供地例子也比较实用。
七、对于EJB学习,比较著名有两本书,<<Enterprise JavaBeans, 3nd Edition>>和<< Mastering Enterprise Java Beans Third Edition>>,两位作者RichardMonson,Ed Roman都是属于业界重量级人物。而Richard Monson本身就是EJB规范专家组成员。对我来说,两本书难分优劣,第二本书有个好处就是可以免费下载http://www.theserverside.com/books/wiley/masteringEJB/index.tss。
八、应该考虑提高自己的代码质量了。这里我强烈推荐Martin Fowler的<<Refactoring: Improving the Design of Existing Code >>,这本书不是一本非常实际的书,作者完全是手把手地教你如何提高代码质量,从具体地代码中告诉你什么是代码的Bad Smell,如何去掉这些Bad Smell。