WebWork in Action中文版
基本信息
- 原书名: Webwork in Action
- 原出版社: Manning Publications
编辑推荐
超越 Struts
把握Web MVC开发未来
推荐阅读
内容简介回到顶部↑
本书是一本从头至尾都使用现实世界例子讲述有关编写web应用程序的书籍。webwork所强调的内容是:利用框架实现你的项目,而不是被框架所阻碍。在本书中,我们将从简单的表单及表单处理开始,逐一讲述编写web应用程序的基础知识:action、interceptor和result,以及控制反转(ioc)模式、对象图导航语言(ognl)和所有来自webwork的实用jsp标签等。然后我们着眼于高级的特性,例如校验、数据类型转换、资源依赖、本地化(i18n)、web应用组件的松耦合,以及大量应对web开发中常见的挑战所需要的解决方案。
本书是为那些厌烦了web开发或者认为会存在更好的web开发方式的开发人员准备的。我们希望读者对java及常用的java api(如java collections api)有基本的认识。由于webwork的内容几乎都与web相关,那么读者必须对html、javascript及css具有基本程度的认识。而实际上不管是开发新手还是富有经验的软件开发者,甚至是那些缺少java基础技术背景的开发者都可以阅读本书,并且能够马上提高自己的开发效率。
本书实例源代码可以从飞思在线和manning出版社的网站下载。
本书是为那些厌烦了web开发或者认为会存在更好的web开发方式的开发人员准备的。我们希望读者对java及常用的java api(如java collections api)有基本的认识。由于webwork的内容几乎都与web相关,那么读者必须对html、javascript及css具有基本程度的认识。而实际上不管是开发新手还是富有经验的软件开发者,甚至是那些缺少java基础技术背景的开发者都可以阅读本书,并且能够马上提高自己的开发效率。
本书实例源代码可以从飞思在线和manning出版社的网站下载。
作译者回到顶部↑
本书提供作译者介绍
Patrick Lightbody曾经在多家汀公司工作,其中既有思科系统公司这样的巨头,也有硅谷中刚刚起步的的小公司,而现在他领导着Jive软件公司的专业服务组织。在业余的时间里,他为多个OpenSymphony项目贡献自己的聪明才智。Patrick现在居住于美国俄勒冈州韵波特兰市。.
Jason Carreira是一位开发人员,也是一位J2EE架构师,他一直致力于设计及构建企业财务软件产品。他现在供职于ePlus公司,开发新一代的eProcurement解决方案。他是OpenSymphony的XWork命令模式框架及WebWork MVC Web框架的核心开.. << 查看详细
Jason Carreira是一位开发人员,也是一位J2EE架构师,他一直致力于设计及构建企业财务软件产品。他现在供职于ePlus公司,开发新一代的eProcurement解决方案。他是OpenSymphony的XWork命令模式框架及WebWork MVC Web框架的核心开.. << 查看详细
目录回到顶部↑
第1部分 webwork简介
第1章 webwork的概貌 3
1.1 为什么mvc是重要的 5
1.1.1 经典mvc落伍了 5
1.1.2 经典mvc模式的更新:前端控制器(front controller) 6
1.1.3 mvc演化:页面控制器(page controller) 7
1.2 理解框架和容器 8
1.2.1 什么是框架 8
1.2.2 容器能够做什么 9
1.3 webwork:过去、现在和未来 11
1.3.1 webwork的历史 11
1.3.2 理解xwork的核心 11
1.3.3 未来发展方向 12
1.4 caveatemptor应用程序 13
1.5 小结 14
第2章 webwork方式的helloworld 17
2.1 下载webwork 18
2.2 准备骨架程序(skeleton) 18
2.2.1 创建web.xml配置文件 19
2.2.2 创建xwork.xml配置文件 20
第1章 webwork的概貌 3
1.1 为什么mvc是重要的 5
1.1.1 经典mvc落伍了 5
1.1.2 经典mvc模式的更新:前端控制器(front controller) 6
1.1.3 mvc演化:页面控制器(page controller) 7
1.2 理解框架和容器 8
1.2.1 什么是框架 8
1.2.2 容器能够做什么 9
1.3 webwork:过去、现在和未来 11
1.3.1 webwork的历史 11
1.3.2 理解xwork的核心 11
1.3.3 未来发展方向 12
1.4 caveatemptor应用程序 13
1.5 小结 14
第2章 webwork方式的helloworld 17
2.1 下载webwork 18
2.2 准备骨架程序(skeleton) 18
2.2.1 创建web.xml配置文件 19
2.2.2 创建xwork.xml配置文件 20
前言回到顶部↑
构建框架是一件困难的事情。一方面,框架需要足够的灵活性以满足多种多样的需求;另一方面,它也需要足够的可靠性,以免在复杂性面前落入困境——这是令框架战胜其他解决方案的驱动力。创建复杂而有用的企业级软件会面临方方面面的问题,而在当今的开发环境下,会有众多框架帮助你解决这些问题。每个框架都有一些独特的特性,可以通过一种让你觉得舒服的方式解决应用程序中某个特定领域的问题;此外,每个框架都必须处理边界问题,以便于在一个随着需求而不断变化的软件系统环境中与其他框架进行交互。.
为了实现这个表面上看起来不可能实现的任务,我们需要了解和研究过去的成果,而这正是框架需要继承和发扬的。就WebWork来说,在我着手开发之前,我仍然关注许多不同的实现方式及框架。而WebWork的出发点是创建一个新的框架,能让开发人员花费尽可能少的精力完成自己的工作,同时不需要通过多余的复杂框架就可以高效地完成每一个任务。简单的事情就应该通过简单的方式完成,虽然复杂的做法也能实现。
WebWork另外一个重要的方面是:它让开发者拥有了使用其他技术的最大自由度。举例来说,当你需要呈现输出结果时,有许多用于呈现的技术可供选择。要找出适合所有情况的最好选择是不可能的,也是没必要的,因为像这样万能的选择并不存在,也不可能存在。对其他技术保持一种开放的态度是至关重要的,而WebWork在这个方面已经做得卓有成效:WebWork现在已经成功地集成了一系列广泛的呈现技术,其中还包括一些并非针对HTML和Web的技术。作为WebWork的一位创始人,如今它的发展已经超出了最初我所期待的目的。..
WebWork刚开始的时候,我需要自己全盘负责,自力更生;而到了第二个版本,它已经成为了一个快速增长的社区项目。在这样一个社区中,开发人员都通过平衡框架提供的结构为WebWork增加新的功能,并且对原有功能加以改进。在当今充满竞争的环境中,如果离开了众多程序员的付出与创意,那么一个框架要获得成功简直就是天方夜谭。因为对于一个框架而言,能够解决开发人员在日常工作中遇到的问题才是最重要的。正是基于此,在社区的努力下,现在的WebWork已经走过了一段自己的历程,并且依然在稳定地成长着。
一本书要涵盖这样一个框架的方方面面,需要解决框架构建的所有细枝末节的问题;还要讲述框架以某种方式工作背后的缘由;同时也要通过实例来演示所有这些理论在实际当中是如何被应用的,只有实践才能见真知。本书恰如其分地阐释了WebWork构建的基本原理,但它主要还是关注于由浅入深地向你展示如何在实践中使用WebWork。时间总是可以证明一切的,如果你对学习有关Web框架构建的知识感兴趣,如果你打算构建一个能给所有人留下深刻印象的杀手级Web应用程序,那么本书将是一份难得的投资。一切皆有可能!...
RICKARD OBERG
为了实现这个表面上看起来不可能实现的任务,我们需要了解和研究过去的成果,而这正是框架需要继承和发扬的。就WebWork来说,在我着手开发之前,我仍然关注许多不同的实现方式及框架。而WebWork的出发点是创建一个新的框架,能让开发人员花费尽可能少的精力完成自己的工作,同时不需要通过多余的复杂框架就可以高效地完成每一个任务。简单的事情就应该通过简单的方式完成,虽然复杂的做法也能实现。
WebWork另外一个重要的方面是:它让开发者拥有了使用其他技术的最大自由度。举例来说,当你需要呈现输出结果时,有许多用于呈现的技术可供选择。要找出适合所有情况的最好选择是不可能的,也是没必要的,因为像这样万能的选择并不存在,也不可能存在。对其他技术保持一种开放的态度是至关重要的,而WebWork在这个方面已经做得卓有成效:WebWork现在已经成功地集成了一系列广泛的呈现技术,其中还包括一些并非针对HTML和Web的技术。作为WebWork的一位创始人,如今它的发展已经超出了最初我所期待的目的。..
WebWork刚开始的时候,我需要自己全盘负责,自力更生;而到了第二个版本,它已经成为了一个快速增长的社区项目。在这样一个社区中,开发人员都通过平衡框架提供的结构为WebWork增加新的功能,并且对原有功能加以改进。在当今充满竞争的环境中,如果离开了众多程序员的付出与创意,那么一个框架要获得成功简直就是天方夜谭。因为对于一个框架而言,能够解决开发人员在日常工作中遇到的问题才是最重要的。正是基于此,在社区的努力下,现在的WebWork已经走过了一段自己的历程,并且依然在稳定地成长着。
一本书要涵盖这样一个框架的方方面面,需要解决框架构建的所有细枝末节的问题;还要讲述框架以某种方式工作背后的缘由;同时也要通过实例来演示所有这些理论在实际当中是如何被应用的,只有实践才能见真知。本书恰如其分地阐释了WebWork构建的基本原理,但它主要还是关注于由浅入深地向你展示如何在实践中使用WebWork。时间总是可以证明一切的,如果你对学习有关Web框架构建的知识感兴趣,如果你打算构建一个能给所有人留下深刻印象的杀手级Web应用程序,那么本书将是一份难得的投资。一切皆有可能!...
RICKARD OBERG
序言回到顶部↑
从我开发第一个基于Web的应用程序至今,已经将近10年了。那是一个使用Perl编写的简单网上购物车程序。我现在仍然保留着这个程序的代码,还不时去浏览一下——我这样做是为了提醒自己当前所处的开发环境,同时令自己能够关注真正的方向。那个应用程序是令人发怵的,因为它有一个极其冗长的Perl文件(超过一万行!),而且还使用了许多print语句直接输出HTML。现在让我再去看这个Peri文件,我已经无法读懂其中的代码了。.
然而,在10年前我会很努力把不同的功能部件结合在一起,同时也会包含一些自己才能读懂的hack。这是专业的开发人员典型的成长历程,我和Jason也不例外。当时,这些自己编写的hack确实有存在的意义,但是随着时间的推移,这些代码就会变得像老鼠窝一样杂乱,代码维护也如梦魇一样可怕。在你开发没有GUI的程序时,这个问题就已经足够严重了,然而一旦业务逻辑处理代码和GUI处理代码犬牙交错,这个问题就会变得更加糟糕。这还没有完,如果GUI是使用HTML编写的,那么这个问题还会进一步恶化,因为你依靠的是线性输出的HTML标签,而不是面向对象或是组件化的技术。
为什么以上谈及的问题很重要呢?那是因为我和Jason都与其他所有开发者一样,已经从只会使用Perl和PHP编写hack的初级程序员成长为经验丰富的开发者了,也已经深刻体会到构建一个易于维护的Web应用程序意味着什么。
WebWork并不是由我和Jason创造的。JBoss最早的作者之一——Rickard Oberg在找到了一条开发Web应用程序更好的途径之后创建了WebWork。Rickard所创造的框架基于以下几个哲学原则:实现某个功能的正确方式应该是最简单的;阻碍最少的途径应该是正确的:在过于复杂和功能简陋之间应该存在着一个很好的平衡点。..
我和Jason通过不同的途径发现了WebWork,但是最后殊途同归:我们都被它强大的功能及优雅的设计深深吸引住了。一段时间过去之后,我们都从WebWork的使用者成为了贡献者,后来又成为了WebWork开发团队的成员,现在则是负责发布的作者了。在这个过程中,我们学会了以更好的方式去做事情,而在另一方面,WebWork也有了很大的革新。我和Jason为创建WebWork 2.0花费了无数不眠之夜,而WebWork 2.0相对以前的版本也有了很大的提高,并且为WebWork平台更好地被利用打下了坚实的基础。
现在,WebWork已经比过去更强大了,而在将来,它会越来越完善。在本书中,你将会学到开发的技术、最佳实践及存在于WebWork框架中的各种概念;你将看到为什么我们在类型转换上花费了那么大的力气,以及类型转换是如何与HTTP结合在一起的;你将会学到HTML领域中常见的问题(例如重复提交的问题)是如何通过使用interceptor而被解决的,其中interceptor是WebWork一个独特的特性;你将理解到为什么构建用于输出HTML的可重用模板是快速创建可维护的Web应用程序的最佳途径。
然而,最重要的是:你将会学到一种更好的构建Web应用程序的方式。不管你是否正在使用WebWork或者使用另外的Java框架,抑或你根本不使用Java,本书所介绍的WebWork基础概念和技术都具有相当的参考价值。我们希望本书能够作为一本WebWork的参考书,同时也能够成为一本帮助你提高开发技巧的工具书。...
PATRICK LIGHTBODY
然而,在10年前我会很努力把不同的功能部件结合在一起,同时也会包含一些自己才能读懂的hack。这是专业的开发人员典型的成长历程,我和Jason也不例外。当时,这些自己编写的hack确实有存在的意义,但是随着时间的推移,这些代码就会变得像老鼠窝一样杂乱,代码维护也如梦魇一样可怕。在你开发没有GUI的程序时,这个问题就已经足够严重了,然而一旦业务逻辑处理代码和GUI处理代码犬牙交错,这个问题就会变得更加糟糕。这还没有完,如果GUI是使用HTML编写的,那么这个问题还会进一步恶化,因为你依靠的是线性输出的HTML标签,而不是面向对象或是组件化的技术。
为什么以上谈及的问题很重要呢?那是因为我和Jason都与其他所有开发者一样,已经从只会使用Perl和PHP编写hack的初级程序员成长为经验丰富的开发者了,也已经深刻体会到构建一个易于维护的Web应用程序意味着什么。
WebWork并不是由我和Jason创造的。JBoss最早的作者之一——Rickard Oberg在找到了一条开发Web应用程序更好的途径之后创建了WebWork。Rickard所创造的框架基于以下几个哲学原则:实现某个功能的正确方式应该是最简单的;阻碍最少的途径应该是正确的:在过于复杂和功能简陋之间应该存在着一个很好的平衡点。..
我和Jason通过不同的途径发现了WebWork,但是最后殊途同归:我们都被它强大的功能及优雅的设计深深吸引住了。一段时间过去之后,我们都从WebWork的使用者成为了贡献者,后来又成为了WebWork开发团队的成员,现在则是负责发布的作者了。在这个过程中,我们学会了以更好的方式去做事情,而在另一方面,WebWork也有了很大的革新。我和Jason为创建WebWork 2.0花费了无数不眠之夜,而WebWork 2.0相对以前的版本也有了很大的提高,并且为WebWork平台更好地被利用打下了坚实的基础。
现在,WebWork已经比过去更强大了,而在将来,它会越来越完善。在本书中,你将会学到开发的技术、最佳实践及存在于WebWork框架中的各种概念;你将看到为什么我们在类型转换上花费了那么大的力气,以及类型转换是如何与HTTP结合在一起的;你将会学到HTML领域中常见的问题(例如重复提交的问题)是如何通过使用interceptor而被解决的,其中interceptor是WebWork一个独特的特性;你将理解到为什么构建用于输出HTML的可重用模板是快速创建可维护的Web应用程序的最佳途径。
然而,最重要的是:你将会学到一种更好的构建Web应用程序的方式。不管你是否正在使用WebWork或者使用另外的Java框架,抑或你根本不使用Java,本书所介绍的WebWork基础概念和技术都具有相当的参考价值。我们希望本书能够作为一本WebWork的参考书,同时也能够成为一本帮助你提高开发技巧的工具书。...
PATRICK LIGHTBODY








点击看大图







加载中...

