Java 技术新手入门
2007-07-23 14:14
971 查看
出处: IBM DevelopWorks
2007-4-15 14:06:00 |
|
J2EE 中的技术: Enterprise JavaBeans(EJB)技术使用一个组件模型来简化中间件应用程序的开发,它提供了对事务、安全性和数据库连接等服务的自动支持。(参见教程 “Enterprise JavaBean 基础”;参见 EJB 最佳实践 系列;阅读 “使用 EJB 3.0 Java Persistence API 设计企业应用程序”。) Portlet Specification 定义了一套用于 Java 门户计算的 API,可以解决聚合、个人化、表示和安全性方面的问题。(参见 “使用 Apache Pluto 构建和测试 JSR 168 兼容的 portlets”。) JavaMail 是一个 API,提供了一套对邮件系统进行建模的抽象类。(参见教程 “JavaMail API 基础教程”。) Java Message Service(JMS)是一个 API,它为所有与 JMS 技术兼容的消息传递系统定义一套通用的消息概念和编程策略,从而支持开发可移植的基于消息的 Java 应用程序。(参见教程 “Java 消息服务介绍”。) JavaServer Faces(JSF)提供一个编程模型,帮助开发人员将可重用 UI 组件组合在页面中,将这些组件连接到应用程序数据源,将客户机生成的事件连接到服务器端事件处理程序,从而轻松地组建 Web 应用程序。(参见 怀疑论者的 JSF 专栏和教程 “用 JavaServer Faces 进行 UI 开发”,以及 JavaServer Faces 技术专题。) JavaServer Pages(JSP)允许 Web 开发人员快速地开发和轻松地维护动态的独立于平台的 Web 页面,并将用户界面和内容生成隔离开,这样设计人员就能够修改页面布局而不必修改动态内容。这种技术使用类似 XML 的标记来封装为页面生成内容的逻辑。(参见教程 “JSP 技术入门”;还请参考 JSP 最佳实践 系列,以及 JavaServer Pages 技术专题。) Standard Tag Library for JavaServer Pages(JSTL)是一个定制标记集合,它以一种标准化的格式启用许多常见的 Web 站点功能。(参见 “使用 JSTL 来更新 JSP 页面” 和分四部分的文章系列 “JSTL 入门”。) Java Servlets 提供一种基于组件的独立于平台的方法,可以构建基于 Web 的应用程序,同时避免 CGI 程序的性能限制,从而扩展并增强 Web 服务器的功能。(教程 “Java Servlet 技术简介” 可以帮助您了解 Java Servlets。) J2EE Connector Architecture(JCA)为将 J2EE 平台连接到各种结构的 Enterprise Information Systems(EIS)定义了一个标准的体系结构,它定义了一套可伸缩的安全的事务性机制,使 EIS 厂商能够提供标准的资源适配器,可以将这些资源适配器插入应用服务器中。(参见 “理解 JCA 事务”、“为 EAI 选择 JCA、JMS 或 Web 服务”、“Integrate remote enterprise information systems with JCA, JMS, and Web services” 和教程 “Introduction to the J2EE Connector Architecture”。) J2EE Management Specification(JMX)为 J2EE 平台定义了一个信息管理模型。根据其设计,J2EE Management Model 可与多种管理系统和协议进行互操作;包含模型到 Common Information Model(CIM)的标准映射,CIM 是一个 SNMP Management Information Base(MIB);还可以通过一个驻留在服务器上的 EJB 组件 —— J2EE Management EJB Component(MEJB) —— 映射到 Java 对象模型。(参见 “从黑箱到企业,第 1 部分: 管理,JMX 1.1 样式”。) Java Transaction API(JTA)是一个独立于实现和协议的高级 API,它使应用程序和应用服务器可以访问事务。Java Transaction Service(JTS)指定了 Transaction Manager 的实现,它支持 JTA 并在这个 API 之下的层上实现 OMG Object Transaction Service(OTS) 1.1 规范的 Java 映射。JTS 使用 Internet Inter-ORB Protocol(IIOP)传播事务。(参见 “Understanding JTS -- An introduction to transactions”。) J2ME 中的技术: Connected Limited Device Configuration(CLDC)是组成资源有限的移动信息设备的 Java 运行时环境的两种配置之一。CLDC 描述最基本的库和虚拟机特性,所有包含 K 虚拟机(K virtual machine,KVM)的 J2ME 环境实现中都必须提供这些库和特性。(参见 “Know no limits: Approaches to mobile device constraints”。) Mobile Information Device Profile(MIDP)是组成资源有限的移动信息设备的 Java 运行时环境的两种配置之一。MIDP 提供核心应用程序功能,包括用户界面、网络连接、本地数据存储和应用程序生命周期管理。(参见教程 “Implementing Push technology with J2ME and MIDP”;阅读 “Better MIDlets by design”、“Custom GUI development with MIDP 2.0” 和教程 “MIDlet development with the Wireless Toolkit”。) Connected Device Configuration(CDC)是一个基于标准的框架,用来构建和交付可以跨许多连接网络的消费类设备和嵌入式设备共享的应用程序。(参见 “确保无线 J2ME 的安全”。) Mobile 3D Graphics API for J2ME(M3G)是一种轻量的交互式 3D 图形 API,它作为可选的包与 J2ME 和 MIDP 结合使用。(参见分两部分的文章 “针对 Java 移动设备的 3D 图形”。) developerWorks 无线技术专区 包含许多关于 J2ME 相关技术的文章和教程。
产生的 Web 服务可以用 XML 定义业务规则和过程,使软件应用程序可以按照一种独立于平台和编程语言的方式进行通信。XML 技术使数据具有可移植性并促进消息的创建,而 Java 技术使代码具有可移植性。XML 和 Java 语言能够很好地结合在一起,这使它们成为构建和部署 Web 服务的理想组合。 可以通过以下参考资料了解关于 SOA 的更多信息: developerWorks 上的 SOA and Web services 新手入门 和 XML 新手入门 页面会帮助您开始学习这些复杂的技术。 “Java Web 服务,第 1 部分: Java Web 服务在未来一年内的发展” 启动一个文章系列,这个系列介绍新的 Java Web 服务框架和在 Web 服务上构建的新的功能层。 “SCA application development, Part 1: An overview of Service Component Architecture” 提供了一个关于 Service Component Architecture (SCA) 的文章系列,SCA 是一个规范,它描述一个使用 SOA 构建应用程序和系统的模型。 “服务数据对象简介” 介绍了 Service Data Objects (SDO) 框架,这个框架简化了基于 SOA 的应用程序的 Java EE 数据编程模型。 还可以访问 developerWorks Web 开发专区,这里有对构建企业应用程序的技术建议。
可以通过以下参考资料进一步了解 Java 编程方面的开放源码技术: Apache Software Foundation 这个庞大的组织主持着大量开放源码项目,其中很多是基于 Java 语言的。比如: Apache Struts 是一个用来创建基于 Model-View-Controller 设计模式的 Java Web 应用程序的框架。(参见 “深入 Struts 1.1 和 Struts 专题”。) Apache Shale 是一种基于 JavaServer Pages 技术的现代的 Web 应用程序开发框架,是 Apache Struts 的后续者。( 你好,Shale 文章系列介绍了 Shale。) Apache Ant 是 Java 开发构建工具的事实标准。(参见教程 “Apache Ant 101:使 Java 项目生成易如反掌” 和 “以编程方式调用 Apache Ant”。) Apache Tomcat 是一种流行的 Web 容器,它支持 servlet 和 JavaServer Pages 技术。(教程 “Tomcat for beginning Web developers” 会帮助您学习 Tomcat。) Apache Geronimo 项目正在构建一个完全基于开放源码组件的完全符合规范的 Java EE 应用服务器。(“Geronimo 入门” 介绍了 Geronimo 的基础知识,还可以查阅 developerWorks Apache Geronimo 项目资源中心 中的大量 Geronimo 信息。) Apache Derby 是一种完全用 Java 语言实现的关系数据库。(通过 “用 Apache Derby 进行开发 —— 取得节节胜利: 介绍 Apache Derby” 学习基础知识,并查阅 developerWorks Apache Derby 项目参考资料 中的大量信息。) Eclipse 是一种独立于厂商的开放式开发平台,提供了一套用来构建软件的应用程序框架。Eclipse 平台是用 Java 语言编写的,提供了一个基于插件的框架,这使得创建、集成和使用软件工具更加容易。(IBM 是 Eclipse 的创始成员之一,并积极参与 Eclipse.org Board of Stewards 及其工作小组委员会。)通过以下参考资料进一步了解这个平台为 Java 开发提供的组件技术: AspectJ 是面向方面的 Java 语言扩展,可以用来对横切关注点(比如日志和异常处理)进行模块化。(参见教程 “AOP 介绍”。) Standard Widget Toolkit(SWT) 是一个用户界面工具包,可以按照高效且可移植的方式访问底层操作系统的 UI 设施。(参见 “SWT 和 JFace,第 1 部分: 简介。”) Eclipse Test and Performance Tools Platform(TPTP)为测试和性能工具提供框架和服务。(参见教程 “Eclipse Test and Performance Tools Platform 简介。” Eclipse Web Tools Platform(WTP)为 Eclipse 平台提供了用来开发 Java EE Web 应用程序的工具。(参见教程 “Eclipse Web 工具平台 V1.0 简介”。) 访问 developerWorks Eclipse 项目资源中心,这里有大量关于 Eclipse 的文章和教程。 流行的 Spring 框架 是一种用于 Java EE 应用程序开发的层次化框架: Spring 系列 和 “Spring 2 和 JPA 简介” 提供了详细信息。 访问 Spring 专题,学习更多有关 Spring 框架的文章和教程。
教程和文章 developerWorks 提供了大量 实用的基于 Java 的教程,这是仅次于自己编写代码的最佳学习方法。Roy Miller 的 “Java 编程介绍” 和 “中级 Java 编程” 教程提供了对 Java 语言的全面介绍,可以帮助您入门。 Merlin 的魔力 和 驯服 Tiger 系列是可以帮助您提高 Java 编程技能的精彩资料。 如果您是刚刚接触 Java 编程的 C/C 程序员,那么 “Java programming for C/C developers” 教程可以帮助您加快学习速度,它对比了 Java 和 C/C 的编程概念。 Extreme Programming(极限编程,XP)是一种应用程序设计哲学,它将连续测试、测试先行 、现场客户输入、重构(即改进代码而不改变功能)等方法组合在一起。如果您没有听说过 XP 精华,这篇文章可以为编写 Java 应用程序提供一个优秀的工具。(“揭开极端编程的神秘面纱: “XP 精华”重访,第 2 部分” 详细描述了实践。) 将设计理论转换为实际的应用程序是 Java 理论与实践 系列的焦点。 Java 程序员可以设计出集成了 bug 探测和测试的应用程序。developerWorks 提供的 诊断 Java 代码 专栏讨论了 Java 调试(重点关注一个称为 bug 模式的工具)。关于这个主题的有帮助的其他文章包括来自 Brian Goetz 的 平衡测试 文章以及 “消除 bug”。 您可能听说过一种称为 Ajax 的编程方法。如果想知道 Java 开发人员如何应用这种技术,就请阅读 Phil McCarthy 的系列 面向 Java 开发人员的 Ajax 。(请访问 Ajax 技术资源中心 和 Web 2.0 开发资源,可以找到更多 Ajax 技术与构建 Web 2.0 网站方面的文章和教程) 图书和 Web 站点: “The essential Java language library” 是最好的起点。 游戏 Robocode 是一个用 Java 技术构建的容易使用的机器人大战模拟器,它在教您进行编程的同时,可以提供数小时纯粹的娱乐。关于 Robocode 的介绍,请阅读 “重锤痛击 Robocode!”;更多相关内容,请访问 Robocode 技巧精粹专栏。 CodeRuler、CodeRally 和 CodeInvaders Challenge 是在 Eclipse 平台上构建的基于 Java 的实时编程游戏。关于 CodeRuler 的介绍,请阅读 “用 CodeRuler 征服中世纪王国”。 IBM 技术培训 可以在 IBM Global Services 提供的各种在线、课堂和基于多媒体的 Java 课程 中进行选择。 认证培训 如果您正在考虑对自己的 Java 技能进行认证,那么要参加几个考试。为了帮助您准备考试,我们在 Whizlabs 的朋友编写了分四部分的教程 “Java 认证成功之路”,这些教程讨论了 Sun Certified Java Programmer(SCJP)1.4、Sun Certified Web Component Developer(SCWCD)、Sun Certified Business Component Developer(SCBCD)和 Sun Certified Enterprise Architect(SCEA)。对于 SCJP exam for Java SE 5 的更新,请阅读文章 “Are you SCJP 5 certified?”。“Preparing for the Mobile Application Developer Certification” 帮助您准备 Sun Certified Mobile Application Developer(SCMAD)。 IBM 在 WebSphere 开发(用于企业 Java 应用程序)、IBM Rational 软件、DB2、XML 和 SOA 等相关技术领域提供 专业人员认证。 论坛 要想以更加交互式的方法学习 Java 语言,请参与 Java discussion forums,这里聚集了著名的专家,他们在运用 Java 相关技术方面有着丰富的实际经验。
免费下载: Java 应用开发源动力 (IBM J2EE 开发三剑客)套件 —— DB2 Express-C、WebSphere Application Server Community Edition 和 Eclipse IDE —— 这个套件包含了构建和运行简单 Java Web 应用程序和 Web 服务所需要的所有东西。 Java Developer Kits 是 IBM 提供的开发人员工具包,用来在流行的平台上创建和测试 Java SE applet 和应用程序以及 Java ME 应用程序,这些平台包括 Windows、Linux 和 AIX。 IBM Development Package for Eclipse 是一个无支持的基于 Eclipse 开发工具,它使开发人员能够利用开箱即用的开发环境构建和运行 Java 应用程序。 Callisto Simultaneous Release project 提供对两个增值 Eclipse 3.2 包的一站式访问,如果您要使用 Eclipse 集成开发环境开发 Java EE 应用程序,这会很有帮助。 Java technology on alphaWorks 介绍了 IBM 提供的大量 Java 相关技术,包括 API、集成开发环境和 devkit、组件、参考实现以及实用程序。下面列出了其中的一小部分: Abstract User Interface Markup Language Toolkit。这些开发工具和 API 帮助您创建在 Java Swing 和 HTML 环境中运行的 GUI 应用程序。 Toolkit for MPEG-4。这是一套 Java 类和 API 以及示例应用程序,用来生成在 MPEG-4 兼容设备上使用的 MPEG-4 内容。 Secure Shell Library for Java。这是 Internet Engineering Task Force(IETF)Secure Shell(SSH-2)协议的一种轻量级实现,用来通过不安全的网络进行安全远程登录和访问其他安全网络服务。 Fluid Sync。这是一个 Java 框架,可以帮助开发协作性和涉及多种设备的应用程序。Fluid Sync 是 Emerging Technologies Toolkit 中的技术之一,这个工具包为网格计算中的 Web 服务、异步 Web 服务、业务过程、自主计算和其他服务提供了高级开发工具。 IBM Rational 软件开发平台 工具是在 Eclipse 3.0 平台上构建的,可以简化高质量应用程序的开发、测试和部署。适合 Java 开发人员使用的 Rational 工具包括: Rational Unified Process 和 Rational Method Composer,一种可配置的软件开发过程平台。 软件配置管理工具,比如 ClearCase 和 ClearQuest。 测试工具,比如 Rational Robot、TestManager 和 Test RealTime。 需求和分析工具,比如 RequisitePro。 可视的建模和开发工具,比如 Rational Software Modeler、Rational Systems Developer、PurifyPlus 和 Rose Technical Developer。 Rational Application Developer for WebSphere Software 是一种快速应用程序开发工具,用来在 IBM WebSphere 平台上开发、分析、测试、剖析和部署 Web、SOA、Java、J2EE 和门户应用程序。 通过 “HelloWorld”系列、“Rational 工具可视化”系列,以及 “Rational Application Developer 认证准备”系列,可以学习关于 Rational 软件开发工具的基本特性和操作基本技能。 WebSphere Application Server 是一种经过 Java EE 认证的特性全面的应用服务器,它提供了面向服务体系结构所需的安全、可伸缩且灵活的应用程序基础结构。可以通过以下参考资料进一步了解 WebSphere 系列的 Java 开发工具: 访问 WebSphere 新手入门 页面和 developerWorks WebSphere 开发者资源 的其他部分,以便尽快掌握 IBM 提供的这种集成软件平台。 访问 WebSphere development tools 区域,这里为使用 WebSphere 工具创建、测试和部署企业级 Java EE 应用程序提供了最新的技术信息和 how-to 信息。 Rational Application Developer for WebSphere Software 是一种快速应用程序开发工具,用来在 IBM WebSphere 平台上开发、分析、测试、剖析和部署 Web、SOA、Java、J2EE 和门户应用程序。 WebSphere Portal 专区 为使用 WS Portal 技术的开发人员提供了 portlet、工具、教程和新闻。 WebSphere Information Integrator 支持对各种分布式信息进行集成的实时访问。 WebSphere MQ 是一种应用程序编程服务,它使应用程序能够相互通信。 WebSphere MQ Everyplace 允许移动工作人员和远程设备通过可靠的消息提交来访问企业数据。 Branch Transformation Toolkit for WebSphere Studio 是一个应用程序框架和一套基于 Eclipse 的专用工具,可以加快多层前端事务性应用程序的构建过程。 WebSphere Message Broker 提供一个高级的 Enterprise Service Bus,为标准和非标准应用程序和服务提供了连接能力和统一的数据转换,使其能够参与 SOA。 IBM Information Management 软件是一个强大的关系数据库管理系统(RDBMS)服务器系列,还包括用于数据仓库、数据分析、数据挖掘、媒体资产管理、企业内容管理和信息集成的软件。IBM Information Management 软件 支持 Java 编程,包括客户机应用程序、服务器端功能以及简化开发和部署的工具: DB2 UDB 非常适合开放的基于标准的业务。 IBM Cloudscape 是一种轻量的关系数据库引擎(由开放源码的 Apache Derby 数据库支持),它支持复杂的 SQL 事务、容易使用而且不需要用户管理。 IBM Informix 软件为事务密集型环境提供出色的数据库性能。 |
相关文章推荐
- Java 技术新手入门
- Java 技术新手入门
- Java 技术新手入门
- Java 技术新手入门
- Java 技术新手入门
- JAVA从菜鸟【入门】到新手【实习】一一ASP技术的若干思考
- JAVA从菜鸟【入门】到新手【实习】一一计算机技术学习方法论
- Java 技术新手入门
- JAVA从菜鸟【入门】到新手【实习】一一常用计算机技术认识
- JAVA从菜鸟【入门】到新手【实习】一一潮流:物联网硬件开发基础,“硬件开发”的技术储备
- Java 技术新手入门
- JAVA从菜鸟【入门】到新手【实习】一一潮流:大数据算法(“技术储备”)
- JAVA从菜鸟【入门】到新手【实习】——明确学习JAVA的技术发展路线
- Java 技术新手入门
- Java 技术新手入门-Java 初学者的入门指南
- Java 技术新手入门
- JAVA从菜鸟【入门】到新手【实习】一一网络技术与应用
- Java 技术新手入门
- JAVA从菜鸟【入门】到新手【实习】一一计算机相关技术联系与组合
- Java 技术新手入门