图书前言

前    言

Java编程是一门艺术,这虽然是智者的游戏,但是入门却非常简单。

在Java这个高雅的殿堂里,有着各种璀璨的明珠,有包容编程精粹的面向对象思想,有整合Web工作流的Struts组件,还有体现持久性的ORM思想,由此导致了Web开发领域发生了天翻地覆的变化。

虽然这些让人叹为观止的技术和思想能让我们发动头脑风暴,帮助我们开发出一个个Java项目,但是罗马不是在一天建成的,我们也有必要从一砖一瓦上,用脚踏实地的态度迈向Java殿堂的最高点。

这本书,可以说是一份浏览Java殿堂胜景的导游手册,它从简单的语法和面向对象思想讲起,由此让大家领略Java语言的魔力所在,从而进入到第一重朴素但稳固的“Java基础”大堂,这个大堂的核心基石是面向对象思想的三大要素——“封装”“继承”和“多态”。这三大要素也是进入后继房间的钥匙。在这里,我们会产生“独上高楼忘断天涯路”的雄心,因为掌握Java魔力的源泉就在于此。

通过第一重大堂,我们可以进入到第二重的“法宝仓库”,其中有进行网络编程的利器Socket,有开发Java项目界面的法宝Swing,还有用于开发数据库动作的遥控器JDBC。通过高效地使用这些法宝,我们将能随心所欲地操纵网络、数据库和界面开发这些看似颇有难度的领域。

不会Java法宝的程序员是万万不能从事这方面开发的,但是这些法宝也不是万能的,隐藏在它们背后的是这些法宝的创建原则,比如MVC和OCP等。这些原则也是迈向第三重圣殿——Java Web组件技术圣殿的指南。在上一重学习Java开发法宝的大堂里,我们或许会因为过多地探索Java技术而“衣带渐宽”,找不到通向“Java蓬莱仙境”的捷径,但在这一圣殿里,我们将以Struts、Spring和Hibernate组件为武器,以包含在其中的“MVC”和架构等思想为指导,最终获取Java殿堂里那颗最璀璨的“移天缩地在君怀”的明珠。在这里,蓦然回首,“Java”却在灯火阑珊处,此时此刻,我们将领略到Java语言的无尽魅力——以简单的方式,开发出重用性高同时又具备各项Web功能的项目。

所有能接触到Java语言的人是有福的,因为你们能有机会掌握一条在充满荆棘的Web开发之路里前行的武器。Java语言是简单的,因为其中没有包含复杂的只有专家级人物才能看懂的语法和技术,但是它又是神秘的,因为它的面纱从不会轻易地向程序员们展开,所以我们即使在了解了很多它的语法和特性后,仍会感觉依然看不透它,甚至会陷入“无法整合地使用Java诸多优秀特性”的困境。这是一个困扰很多Java编程者的问题,不过,如果这本书有幸吸引你的话,我将在其中用生动的案例来和你一起探讨这个问题。

如果你是初学者,那么这本书将从零基础开始,带您浏览引人入胜的各技术领域,通过阅读本书,通过运行本书给出的例子,您将很快地上手,并胜任一般软件公司里的项目开发工作。

如果您已经开始从事Java方面的开发,并有一定的语法和思想基础,那这书将通过贪吃蛇、象棋和生命游戏等案例,向您归纳一些Java编程的思想,并用这些思想向您讲述“如何更好地使用Java思想开发高重用性”项目的问题。如果您已经是项目经理,或者是架构师,那么这本书将把您从杂务里解脱出来,通过向您展示优秀的项目开发思想与设计,让您能通过Java里的Web组件和开发模式,在项目开发中充分贯彻“高复用低耦合”的理念。

学习Java语言吧,因为在学习中,编程之神随时会降临,告诉您编程艺术的真谛。我在学习Java时,虽然入迷,但也走过不少弯路,所以在这本书里,将以过来人的视角,向您展示一条学习之路,它虽然不是捷径(因为世上没有捷径),但会是一条坚实且颇有收获的道路。

所有打开本书和阅读本前言的人,我们都是同伴,所以您在阅读时遇到任何的问题,我将随时和您探讨,我的邮箱是hsm_computer@163.com。本书不是万能的,但我想借助这本书,更多地和现在、过去与未来从事Java开发的读者们交流,共同领略Java的艺术。

我以前曾写过C#.NET数据库开发方面的书,而创作Java开发的书这是第一本。这本书在写作过程中,得到了很多人的帮助。我首先要感谢清华大学出版社的陈冰编辑,他仔细审阅了每个章节的内容,并以“一切为了读者”的责任心,提出了很多“面向读者”的意见,并督促我修正每一处可能会导致歧义的内容,同时时刻鞭策着我,让我不敢稍许懈怠。

个人的力量是有限的,在这个过程里,我多次得到我的导师,大连理工大学计算机系孟宪福先生的指导,同时,每当我对本书里的技术产生困惑时,我就会和我的同学、同事及网友一起讨论,我要感谢郁伟、林美、王伟、黄裕丹、程炜杰、赵晓坤、景赫、李建刚、李怀发、袁润非、闫海等人的帮助,本书里很多文字是我们这群人智慧火花的碰撞。

此外,翻译团队的沈金河、周靖、詹文军、邱仲潘、鲍碧瑶、马孝荣、王安鹏、田玉敏、王利、易磊、杨中民、刘洪举、余乐等同事,他们给我提供了足够多的国外优秀资料,感谢你们。

我有理由相信,这本书虽不是完美的,但的确是字字斟酌过的,足以给从事Java编程的各位朋友提供有力的帮助。

Java的生命力来自于它的组件思想将会不断适应Web编程的需求,所以它不是一成不变的,其中的组件将会不断升级,也正是这样的变化,会导致我们学习Java的历程是需要不断进步的。作为本书的作者,我非常愿意用各种方式与各位交流,不断从讨论、辩论甚至是争论中,锤炼出Java开发的优秀思想和方法。

最后,我要感谢清华大学出版社提供给我的这个能让我们共同交流共同进步的舞台。

版权声明

本书里的所有理论和案例部分的描述,均为原创,不存在引用其他资料的情况,如出现和现有资料非常雷同的语句,实属巧合,如仍有疑问,可以和我联系。

感谢所有Java方面的先驱者,没有你们分享的经验,本书是无法完成的。

                                                                        胡书敏

                                                                   2008年7月20日

??

??

??

??

Java第一步——基础+设计模式+Servlet+EJB+Struts+Spring+Hibernate

前    言