从Tomcat、struts再到Hibernate,后者的技术涵盖面和技术难度最大,Hibernate是连接对象模型和关系数据模型的桥梁,本书对如何设计以及实现对象模型和关系数据模型都作了深入介绍,其次是Hibernate本身的用法。Hibernate上手容易,精通难。它的规则非常灵活,初次接触它的人会感觉灵活得没有头绪,以至于半途而废。不过,一旦驾权了Hibernate,就会一劳永逸,节省企业Java应用中30%的JDBC编程工作量。
Tomcat一书主要介绍构建Web应用的运行环境以及JavaWeb编程,Struts一书主要介绍JavaWeb应用框架,包括表述层和控制层的设计,而Hibernate一书主要介绍Java应用的对象模型层、持久化层和关系数据库层的设计与开发,通过这三本书,足以开发健壮的企业Java应用。2005年,Hibernate作为优秀的类库和组件,荣获了第15届Jolt大奖,这将使 Hibernate成为越来越流行的ORM映射工具。
个人感觉,Hibernate最难写了,刚开始写作的时候,脑袋里有千头万绪,错乱交织在一起, Hibernate是一个功能强大的映射工具,能够把各种复杂的对象模型映射到关系数据模型,并且对同一种模型还会提供好几种映射方案。此外,为了提高查询性能,Hibernate提供了非常灵活的检索策略。我必须把这些头绪一点点的理顺,然后用简洁的语言、恰当的例子、一目了然的图片把它们表达出来。必要的时候,通过表格来比较各种方案的异同点,让读者能清晰的理解每种方案的适用场合。写完Hibernate,我的概括、归纳和思考能力有了进一步的提高。
Hibernate的英文原意是冬眠,凑巧的是,我写Hibernate的大部分时间也在冬季,在写作的最初三个月和我的家人在一起,他们常常在我正在认真思考的时候,善意的打断我的思路,提醒我该休息一下了。为了躲避这种善意的打搅,后来不得不找了个无人知晓的清静环境,隐居了三个月,直到把书写完。这是一段非常有趣的经历,每天都只和电脑为伴,电脑是没有情感的,但是坐在电脑前的却是个充满情感的大活人,会因为遇到复杂的难题而烦恼,或者因为顺利解决了难题而获得短暂的快乐。说实话,最让我烦恼的是,我是在放弃了工作的情况下写Hibernate的。在每个月没有固定薪水的情况下,持之以恒的全身心的写作,不仅需要毅力,还需要有一点奉献精神。当我在感到生存压力的时候,我会从那些穷困潦倒的作家或艺术家生上找到一些动力,比如中国的曹雪芹,外国的凡高。我常常安慰自己,我不过是一介草民,不做这件事,未必能做出其他更有意义的事来,不要把自己看得太重要,就会减轻好多烦恼。
计算机类书籍不比通俗小说,读者群有限,发行量小,而且技术书淘汰得非常快,写作所得收入是微乎其微的。在以个人所得,而不是以为社会奉献来衡量人生价值的大环境中,要潜心写好计算类书籍必须放弃这种流行值观。否则,如果把写作当成商业行为,就会为了降低成本,而拼命缩短写作时间,导致粗制滥造。多数读者对我的书的评价是,很清晰,很细致,这是因为我热衷于写作本身,有兴致斟酌每一个句子,寻找最佳表达方式;有耐心细致的检查书中的每一个知识点的正确性;会不厌其烦的对作品的结构和语言不断完善,成为一个前后联贯的有机整体。