提前感谢!
对我来说,如果你已经掌握了足够的SE,那么选择JavaEE是可以的。当然,在编程论坛里闲逛会教你一些你不知道的东西。相信我,有很多。不过,我有几条建议可以帮助你。
知识从来都不是坏事,所以建议更多地学习软件工程(SE)。
但现在涉足企业级开发(EE)也没有错。从Servlet、JSP和JDBC开始入手,只使用这些技术就可以完成许多有用的事情,并且可以称之为EE。
如果您编写JSP,请确保使用正确的方式——使用JSP标准标签库(JSTL),避免使用脚本代码。
我同意给出的建议,从学习核心Java开始尝试J2EE是可以的。但是,我建议继续磨练你的核心Java技能。
当我在寻找想要加入我的团队的J2EE开发人员时,我会寻找那些知道如何利用JDK编写简单可维护代码的人。你应该对集合API了如指掌。你一定要遵循Effective Java中的建议进行实践。最终,你会需要了解一些线程的微妙之处(第1步:保持对象不变;第2步:参见第1步)。
另外,如果你在纽约地区,请留言,也许我们可以线下联系。
澄清一下:每个有趣的Java应用程序都需要业务逻辑和使用普通的旧Java对象(POJO)。显然,这包括J2EE应用程序,无论它是一个Web应用程序、一个供Web应用程序使用的框架,还是一个J2EE应用服务器本身。对于Java开发人员来说,一旦他们开发了一个“玩具”应用服务器,就会产生新的认识,此后学习J2EE将变得更加容易。
从我的角度来看,一个真正的J2EE“绝地大师”知道如何将应用服务器拆分为其基本的Java组件。例如,EJB是代理,它通过添加使用RMI网络协议的远程过程调用以及事务管理器来包装业务POJO。如果你了解RPC、RMI和事务,那么你迅速理解EJB的机会就会增加。你已经准备好开始使用JavaEE了。
当你使用它时,你将使用JavaSE来进行JavaEE的开发,因为JavaEE是在JavaSE基础上增加了新的库。
对我来说,学习一项新技术最好(几乎唯一)的方法就是实际应用它。我曾尝试阅读和学习JSP(早在2000年)或任何新框架,但我只会感到无聊。
直到我有了一些可以应用Hibernate或EJB的项目,我才真正理解了它们。
我已经阅读了很多关于Spring的资料,可能我能通过面试,但由于我从未在项目中使用过它,所以我不认为自己真正掌握了它(尽管我知道它的工作原理、配置文件甚至新的变化)。
因此,我的建议是,如果你有能力,不要在意薪水是否低,尽快参与任何JSP项目。这样的学习效果比任何书籍、训练营、课程或其他任何东西都要好得多。
也许这只适用于我。 :)
我开始学习JavaEE时,对基础Java知识了解不足,现在我非常后悔!
JavaEE不仅仅是一组附加的API,它涵盖了EAI、SOA和DBs等许多概念。试图掌握这些概念,学习API并且还要了解基础 - Java,是一个真正的挑战。
JavaEE听起来很令人兴奋,确实如此,但如果你想要编写干净、易于测试和正确的代码,我的建议是:从Java SE开始。
当我们开始学习J2EE时,我们中没有人之前编写过除SE以外的任何代码;我会尝试去做。