Java Studio Creator为开发者提供了一个高效率的可视化开发环境,用于创建、集成和交付关键业务应用程序。本书根据Creator 2进行了改写和更新,包含了5章全新的内容。本书的两位作者是优秀的Java讲师和顾问。本书可帮助读者利用Java Studio Creator来简化和加速整个开发过程。本书包括以下内容:
●掌握Java Studio Creator的界面和工作流程。
●利用JavaServer Faces组件、验证器和数据转换器来简化Web开发。
●利用页面导航编辑器来控制Web应用程序页面流转。
●利用JavaBeans组件创建Creator项目。
●利用基于XML的开放标准访问Web服务:使用Google Web服务API的实例研究。
●使用数据库和数据感知组件——包括对新的JDBC RowSet的详细讨论。
●定制应用程序:本地化、国际化和定制验证方式。
●利用Creator内建的调试器进行调试。
利用Java Studio Creator和这本书,您花在编写应用程序的上的时间会变少,从而留出更多的时间给您真正关心的高附加值的任务。简而言之,您可以做得更多、更快,更有意思。网站www.asgteach.com提供本书实例代码。
无
您将开始一次旅程,我们希望这次旅程是快乐而富有成果的。当然,任何应用程序开发工具的目标都是帮助开发者变得更有效率,让他们将时间花在创造性的任务上,让工具默默地替他们完成一些苦差事。从这一点来说,我们希望本书能够教给您关于Creator的方方面面的知识,这们您就能够快速地开始创建Web应用程序。
本书是怎样组织的
Creator2在Creator第一个版本的基础上有了很大的改进,我们全面修订(并扩充)了这本书,以反映“全新的”Creator。总的来说,您会看到改进的设计时体验,先进的页面设计编辑器和组件样式编辑器。Creator2包含一组完整的新UI组件(数量更多),支持改进的基于主题的外观,属性名称也很直观。数据提供器为持久层提供了一致的接口,NetBeans为IDE提供了底层的支持。其他的改进还包括创建基于Portlet的项目、使用EJB、使用支持AJAX技术的组件等。享受这一切吧!
第1章介绍Java的世界及其支持技术。Creator是基于这些优秀的Java技术来完成它的工作的。利用Java编程语言和XML,JavaServer Faces组件系统,以及NetBeans工具的构建技术,Creator集成了已有的标准。本章对这些主题进行了简要的介绍,让您能够了解Creator在整个Java世界中处于什么位置。我们也花了一些篇幅介绍Java编程语言,因为您在Creator中经常要使用到Java语言。如果您来自于其他的编程环境,我们希望您能很快适应基于Java的Web应用程序。
第2章介绍Creator,目的是让您了解它的各种窗口、设计画面和编辑器。了解如何操作IDE目的是提高效率。您将从头开始创建第一个项目。
第3章是组件清单。这一章能够从Creator的组件、验证器和数据转换器中选择最适合应用组件。也指出了在本书的哪些项目中使用了这些组件。
第4章讨论使用Java源代码编辑器,用并发版本系统(CVS)管理代码,以及执行项目级的任务,如重构。Creator是基于NetBeans IDE的,NetBeans为这些软件管理任务提供了支持。
第5章介绍Creator中的页面导航。介绍如何在Web应用程序中指定页面流转,理解哪些组件适合实现页面导航。将讨论Creator的导航模型,并通过几个项目来展示页面导航。
第6章对Creator项目进行剖析。JavaBeans组件为Creator提供了一种关键的支持技术。理解JavaBeans优点的开发者能够利用可复用的组件创造出稳定、强大的应用程序。这一章也讨论JSF/Creator页面请求生命周期,这样就可以充分利用Creator的生命周期回调方法。
第7章介绍Web页面设计和布局的相关特征。页面片段让应用程序能够保持一致的外观,一些布局组件帮助实现布局设计。Creator的层叠样式表(CSS)编辑器能够创建页面和组件的样式规则。
第8章介绍数据提供器,它作为一个标准层,将Web应用的组件与持久层连接起来,如数据库、Web服务、JavaBeans组件或企业级JavaBean(EJB)等。介绍了数据提供器接口,展示了在项目中使用数据提供器的一般方法。
第9章介绍如何在Creator中使用数据库。将创建一个项目进行基本的数据库操作,如读取、更新、插入和删除。Creator的数据感知组件使得连接数据库(通过数据提供器)变得简单而容易。
第10章介绍如何在Creator创建的应用程序中访问Web服务。随Creator一起提供了一些Web服务,您也可以在IDE中添加新的Web服务。在这一章中,将创建一个使用Google Search Web服务的应用程序。企业级JavaBean(EJB)为分布式系统提供了一个强有力的模型。Creator创建使用EJB的应用程序,对已部署的对象自动生成调用方法的代码。
第11章介绍如何调用EJB方法,如何通过标准的数据提供器操作返回的数据。利用Creator,可以创建符合Protlet规范(JSR 168)的JSF Portlet应用程序。
第12章介绍Portlet应用程序开发,包含了使用Web服务、访问数据库以及portlet Edit模式和Help模式的一些例子。
第13章介绍如何利用Creator定制一个Web应用程序。了解如何进行应用程序的本地化和国际化。并介绍如何编写和安装定制的验证方法。您急于使用AJAX技术吗 我们提供了几个例子,用到了支持AJAX技术的自动完成文本字段。
第14章展示如何在项目中使用Creator的调试器。了解如何设置断点、查看服务器日志文件、响应异常以及使用NetBeans的HTTP监听器。
关于示例
本书包含大量示例。我们在这些章节中提到的所有例子都包含在例子下载包中。数据库有关的一些章节包含了一个Music数据库的例子,也包含在了下载包中。例子代码可以在Sun微系统公司的Creator2网站上下载:
您也可以从作者的网站上下载例子代码:
我们建议您访问以上两个网站,了解Creator的最新更新情况。
关于封面
贝聿铭先生的玻璃金字塔可以很贴切地表示Java Studio Creator技术。这个金字塔是巴黎卢浮宫博物馆的入口。它是真正国际化的,它由美籍华裔贝聿铭先生设计,贝先生既是工程师,也是艺术家。我们被玻璃和光的优雅简单所吸引,它拥有多面性,其结构既具有现代风格又体现古希腊风格。
Java Studio Creator同样是建立在架构分层的概念上的。基于JavaServer Faces技术,Creator利用了现有的Java2平台企业版(J2EE)的架构,当然也利用了Java及其运行环境作为其坚实的基础。与此相似,玻璃金字塔也是分层架构的一个范例,它的背景是传统的文艺复兴时期的宫殿,卢浮宫本身存放了自古以来的许多艺术珍宝,可能最著名的就是达芬奇的蒙娜莉莎。
Gail Anderson和Paul AndersonAnderson Software Group,Inc.致谢
如果没有其他人的帮助,不仅这本书在时间和准确性方面会受到影响,这本书是否能存在也是一个问题。Sun公司的Jim Inscore宣布了这个项目,负责管理和协调技术支持。如果没有他的期望,本书的第2版将无法实现。
来自Sun公司Creator团队的许多人向我们提供了直接和间接的帮助,回答了技术问题,在设计和架构问题上提供了深刻见解,提供了更新的软件,使我们能使用最新的系统,并对本书的草稿提供了很有价值的反馈意见。我们特别要感谢Winston Prakash,他为我们提供了关键的技术支持,回答了很多的问题,他就是我们要找的人,怎样评价他在这个项目上的付出都不过分。
Octavian Tanase和Sandip Chitale也直接帮助我们,在本书的编写过程中解答了许多技术问题,Octavian也集中处理我们的问题,将它们反馈给对应的Creator团队成员。因此,我们也想感谢那些给予我们帮助的人:David Botterill、David Folk、Chau Nguyen、Tor Norbye、Matt Bohm、Craig McClanahan、Chris Kutler、Edwin Goei、Dongmei Cao、Vaughn Spurlin和Dusan Pavlica。Valerie Lipman参与了早期确定内容的讨论。我们的读者Les Hawkins也提供了有价值的反馈。
第2版是在第1版的基础之上完成的。Greg Doench是Prentice Hall的编辑,他使本书成功出版成为可能。德国Vietsbronn的Vicky Hilpert完成了德文翻译,Blanca Lazaro完成了西班牙文翻译。还要感谢家人(特别是Sara和Kellen)和朋友对我们的支持。
最后,感谢James Gosling给我们带来了Java。
Java Studio Creator为开发者提供了一个高效率的可视化开发环境,用于创建、集成和交付关键业务应用程序。本书根据Creator 2进行了改写和更新,包含了5章全新的内容。本书的两位作者是优秀的Java讲师和顾问。本书可帮助读者利用Java Studio Creator来简化和加速整个开发过程。本书包括以下内容: ●掌握Java Studio Creator的界面和工作流程。 ●利用JavaServer Faces组件、验证器和数据转换器来简化Web开发。 ●利用页面导航编辑器来控制Web应用程序页面流转。 ●利用JavaBeans组件创建Creator项目。 ●利用基于XML的开放标准访问Web服务:使用Google Web服务API的实例研究。 ●使用数据库和数据感知组件——包括对新的JDBC RowSet的详细讨论。 ●定制应用程序:本地化、国际化和定制验证方式。 ●利用Creator内建的调试器进行调试。 ●利用Java Studio Creator和这本书,您花在编写应用程序的上的时间会变少,从而留出更多的时间给您真正关心的高附加值的任务。简而言之,您可以做得更多、更快,更有意思。网站www.asgteach.com提供本书实例代码。
决定创建Java Studio Creator的开发者面临一项艰巨的任务:让创建复杂的企业级应用程序变得简单。
构成Java2 Enterprise Edition(J2EE)的一组技术是相当庞大的,好的方面是J2EE已经经过了实战的检验,证实了它作为大规模关键应用的基础是很出色的。许多优秀的书籍详细地介绍了J2EE的方方面面的特点,但所有这些导致了J2EE的不利的方面:它变得很难,需要花很多时间来学习和使用。为了让J2EE变得尽可能简单,人们做了大量的工作,但它仍然让人畏惧。
在简化基于J2EE的Web应用程序的开发过程方面,Java Studio Creator迈出了一大步。开发者不需要处理这些琐碎的细节:Creator会处理它们。开发者能够以一种简单而直接的方式关注他们的应用程序做什么,看起来怎样。他们通过简单的拖拉操作将数据源编织在一起。在Creator中开发应用程序只需要很少的Java或J2EE知识。Creator不仅简化了过程,也加速了过程。
这本书包含了利用Creator生成企业级应用程序时您需要了解的所有内容。它不要求事先了解J2EE,甚至不要求事先了解Java,书中包含一些需要了解的背景知识。对于来自其他平台(例如Basic!)的开发者来说,这是进入大规模、关键任务应用程序的绝佳入口。这很有意思,投身进去吧!
James GoslingSun Microsystems,Inc.
Gail Anderson;Paul Anderson:Gail Anderson: GailAnderson,Anderson软件集团的创始人之一,也是研发主管,特长是Java、UNIX/Linux、C、C++和面向对象设计。她开发了EJB 、JSP、servlets、JDBC和UML的课程。
Paul Anderson: Paul Anderson,Anderson软件集团的创始人之一,特长是让软件工程变得可理解。他曾在IBM、AT&T、Yahoo、HP、美国海军、Qualcomm和其他顶级公司授课。
王海鹏 蔡黄辉:暂无简介
本书详细地探讨了如何利用Sun微系统公司突破创新的Java Studio Creator集成开发环境来创建BS架构的J2EE应用程序,清晰地展示了Creator的强大功能以及如何极大地提高开发者的效率。若能掌握本书的内容,一定能够帮助您提高J2EE Web应用开发的效率和品质。
众所周知,J2EE的目标是为企业级的关键任务应用程序提供解决方案,因此,它由一组为数不少而又相当复杂的技术规范组成。这是由企业级关键应用本身的特点所决定的,正是这种特点,给开发者带来了挑战。
即使我们将范围局限在Web应用程序的表示层开发上,J2EE提供的解决方案也远不能满足开发者的要求,于是出现了各式各样的Java Web框架,如Struts、WebWorks、SpringMVC、Tapestry……如此之多的Java Web框架正好说明了一个问题:没有一种框架能够很好地解决问题。其中似乎Struts以其稳定性、清晰性而成为某种程度上的事实标准,这种情况一直持续到JavaServer Faces标准的推出。
JavaServer Faces综合了已有主要Java Web框架的设计优点,它有Tapestry那样的组件模型,有Struts那样的页面流转控制,有Spring那样的JavaBean支持。Struts的主要设计者Craig McClanahan也是JavaServer Faces 10(在JSR 127下开发的)联合规范的领导者,他曾在不同场合下多次表示JSF技术是Java Web框架的趋势。
JSF所缺的只剩下一个可视的组件组装RAD环境,像Delphi或VB那样的IDE,Java Studio Creator完成了这最后一块拼图。Creator2已趋于成熟,足以胜任实际的项目开发工作,McClanahan正是Creator产品团队中的一名架构师。好的东西使人一旦拥有,就别无所求。Java Studio Creator正是这样的产品,它是目前能找到的最好的可视化JSF应用开发工具。所有正在使用Struts或为选择哪一种Web框架而烦恼的开发者,请听从McClanahan的建议,赶快转到JSF和Creator上来吧!
在Sun公司的主打开发环境NetBeans 6中,所有Creator的功能都会合并进去,但这丝毫不会影响本书的价值:它仍是可视化JSF应用开发的最权威的指南。
在本书的翻译过程中,我们也受益颇多。我们在开发的项目正是使用Creator来开发Portlet。开发中遇到的许多问题,我们都在这本书中找到了答案。本书的1至6章由王海鹏翻译,7至14章由蔡黄辉翻译,全书由王海鹏统稿。
衷心地希望这本书能帮助您提高开发效率,享受技术带来的好处:有更多的时间享受生活!
王海鹏
蔡黄辉
2007年初夏于上海
译者序
序言
前言
第1章Java技术概述
11简介
12Java编程语言
13JavaBeans组件
14NetBeans软件
15XML语言
16J2EE架构
17Java Servlet技术
18JavaServer Pages技术
19JDBC API与数据库访问
110JavaServer Faces技术
111Ant构建工具
112Web服务
113Enterprise JavaBeans(EJB)
114Portlet
115要点小结
第2章Creator基础
21示例安装
22Creator视图
23应用示例
24要点小结
第3章Creator组件
31JSF概述
32组件
33基本组件
34布局组件
35组合组件
36验证器
37转换器
38AJAX组件
39要点小结
第4章软件开发
41使用Java源代码编辑器
42重构
43用CVS进行源代码控制
44创建非Web项目
45要点小结
第5章页面导航
51导航模型
52简单导航
53非命令组件
54动态导航
55要点小结
第6章Creator项目剖析
61什么是Bean
62LoginBean
63LoanBean
64CreatorJSF生命周期
65要点小结
第7章网页设计
71使用可视化设计编辑器
72主题
73关于样式
74级联样式表
75页面布局
76页面片段
77标签集介绍
78要点小结
第8章数据提供器
81数据提供器基础
82对象数据提供器
83对象列表数据提供器
84Cached RowSet数据提供器
85要点小结
第9章访问数据库
91数据库基本
92数据源
93访问音乐数据库
94主从表应用——两个页面
95主从表应用——单页
96数据库更新
97在数据库中插入新行
98从数据库中删除
99处理级联删除
910要点小结
第10章访问Web服务
101Google Web服务
102验证——项目Google2
103显示多个结果元素
104显示多页
105要点小结
第11章使用EJB组件
111使用EJB
112作为业务对象的EJB
113Greeting的两种方式
114用EJB实现主-从页面
115在Creator中添加EJB
116要点小结
第12章Portlet
121什么是Portlet
122创建一个Portlet项目
123通过Portlet访问数据库
124Web服务和Portlet
125Portlet编辑模式
126Portlet帮助模式
127要点小结
第13章用Creator定制应用程序
131本地化应用
132国际化应用
133从应用程序中控制Locale
134定制验证方法
135使用支持AJAX的组件
136使用支持AJAX的组件和Web
服务
137要点小结
第14章利用Creator调试
141为调试制定计划
142调试器概述
143运行调试器
144设置断点
145管理断点
146单步调试代码
147追踪变量
148设置监视
149使用调用栈
1410探测异常
1411完成调试
1412调试方法
1413使用HTTP监视器
1414要点小结