9

10 年来,我一直在使用 Swing 和 JDBC 进行“普通的旧 Java 对象”编程,我认为自己非常擅长。但是我在两周后开始了一份新工作,他们使用 JBoss,我想在开始之前开始学习所有这些东西。什么是好的资源?在线教程、书籍、电子书,任何你可以建议的东西,尤其是那些不尝试先教你纯 Java 基础知识的东西。

4

5 回答 5

6

为了快速上手,您确实需要掌握 EJB 和 JSP/Servlet。这些是 Java EE 技术的基础。关于 EJB 和 JSP/Servlet 的 Head First 系列对于通常是一个令人费解的复杂框架来说是一个良好的开端。请注意,最近的 Head First 版本已转向教授更简单的基于注释的 Java EE 1.5 框架。虽然较新版本的 Java EE 更简单更好,但您可能需要了解以前的版本(Java EE 1.4 = EJB 2.1 和 Servlets 2.4)。

此时,您只是将脚浸入水中。在接下来的一年里,我将花费大量时间阅读 Java EE 技术以及更广泛的客户端-服务器企业应用程序开发。

a)您绝对必须了解数据建模和数据库。我见过的最好的是 Chris Date、Steve Feuerstein(如果您使用 Oracle)和 Joe Celko。更好的 Java EE 开发人员可以在有关数据库的技术讨论中跟上他们的 DBA。

b) 你确实需要了解 JDBC 是如何工作的,以及为什么会出现像 iBatis、Hibernate 和 Toplink 这样的 ORM 工具。假设您知道如何编写 JDBC DAO,那么请务必了解 Hibernate 的工作原理。

c) 您应该了解 Java EE 应用程序的分层架构。核心 Java EE 设计模式已经规定了典型实践,您即将进行的项目很可能会坚持这些模式。也就是说,您还应该了解有关架构的其他观点。我发现 Martin Fowler 的企业应用程序架构模式和 Rod Johnson 的专家一对一 Java EE 设计和开发很有价值。后者中的想法成为了 Spring 框架,并已成为许多 J2EE 开发人员更喜欢开发他们的应用程序的主流。

d) 然后学习一些围绕 Java EEE 生态系统萌芽的框架。虽然这是一个哲学问题,为什么会有这么多框架,以及哪个更好,但关注您的雇主专门使用的框架就绰绰有余了。

于 2008-10-18T18:35:25.510 回答
4

我想到了几个答案:

  • 如果您习惯使用“plain old java”,那么您可能需要一个plain old j2EE 的基础,而不是JBOSS 特定的东西。我将从sun 教程开始,但熟悉 servlet 的一般结构,即 servlet api,是基础。

  • 随着应用程序服务器的发展,JBoss(仅我的偏见)非常庞大和复杂。想想“发射航天飞机”,你就不会太远了。百万服务。它特别值得注意的是具有不寻常的类加载器结构(尽管自从我上次使用它以来这可能已经改变,大约 1 -2 年前)等等。它也有很多不错的服务,比如 JMX 基础(管理配置 bean),尽管文档可能参差不齐,因为支持是一项付费服务​​。

最佳建议 - 熟悉 J2EE 库。接下来是在 JBOSS 中运行一个基本站点。您可能想要做的更具体的事情可能非常具体到他们的安装(例如,那里有一个可用的 JMS 实现,但他们可能没有使用它),因为我看到人们只使用它作为一个 servlet 容器。

于 2008-10-17T21:22:41.743 回答
2

我建议在工作中读一本像 Jboss 这样的书 http://oreilly.com/catalog/9780596007348/

我们在工作中也使用 jboss.. 我读了这本书,发现它很有用..

于 2008-10-17T21:25:39.913 回答
2

听起来像我(虽然绝对不是 10 年的经验)。我从 servlet/jsps 的 Head first 系列开始。我已经知道它们的用途。如果你对设计模式和 OOPS 有很好的掌握,Ejbs 和其他资源将是小菜一碟,专心研究它们的原因,如何以及做什么可以等待。应用程序服务器是另一种野兽,但是,通过管理手册有助于澄清很多事情。SSL/证书存储/集群可以排在列表的最后。您还想了解诸如 Hibernet 之类的 ORM 工具;替代视图技术,如 Wicket、Tapestry 等;像 Spring 这样的容器和像 struts 这样的库都是可以慢慢学习的。在互联网上发布的最佳实践和评论肯定会有所帮助。

选择要遵循的顺序应该不是那么困难,因为大多数时候工作场所决定了技术。请记住,J2EE 是一堆规范和框架,本质上是针对特定群体的支持库。掌握关键的是设计师/开发人员

于 2008-10-17T21:36:37.583 回答
1

学习企业 Java Bean

于 2008-10-17T21:26:06.683 回答