書名:Head First Servlets and JSP: Passing the Sun Certified Web Component Developer Exam
出版商:O'Reilly Media, Inc.
作者:Bryan Basham, Kathy Sierra, Bert Bates
出版時間:March 2008
語言:英語
網上有清晰電子版(英文),全文共913頁(其中本文內容789頁),由於書中字距較寬鬆、圖表較多、重複內容多,因此書雖厚但閱讀起來會比較快。
閱讀策略
本書是要重點閱讀的,採取了以下策略:
首先通讀一遍全書,閱讀時做一些摘錄、筆記(有些直接記在pdf檔案裡,有些記在myBase Desktop工具裡);遇到不明之處,如不影響後續閱讀,有整體性瞭解後暫不細究;有些章節內容較多,但非核心內容,可先簡單瞭解,有整體性概念即可。
在第一遍通讀之後,進行小結,腦子裡形成全書的內容、結構圖(拿一張白紙,一支筆,不看任何資料畫出書中各項內容及關聯關係),並根據目的區分出哪些章節需要再次重點閱讀、哪些章節可以暫時不精讀、哪些章節已基本掌握只要看一下重點即可。之後便進行第二輪更強目的性的閱讀。當然,實際項目中應用是掌握技術的最好途徑,但是在此之前通過閱讀優秀書籍形成整體性的概念,相信會事半功倍。
從4月12號開始閱讀本書,斷斷續續,到5月2號完成第一遍的通讀,期間有10天讀過本書,共耗時約40小時。現在便是在做第一遍通讀後的小結。
書本內容
本書詼諧風趣,不乏搞笑,深入淺出,循序漸進,講究學習方法,尤其適合初學者。
書中涉及到的技術與產品的版本: J2SE 1.5, Tomcat 5, Servlets 2.4, JSP 2.0, JSTL 1.1
全書可以分為三個部分
第一部分(第一到第三章)總體介紹性內容 此三章內容再瀏覽一遍即可
此部分的內容在後續章節中都會再正式提及。看完頭三章,能夠在tomcat上部署一個簡單的JSP應用。
第二部分(第四到第十章) 詳細講解各項開發的關鍵技術,每章主要內容如下:
- Chap 4 Servlet(54頁) 本章應精讀
Servlet生命週期及方法、Request/Response訊息、Servlet/Request/Response等類繼承結構、8個HTTP方法、GET/POST方法詳解、Redirect/dispatch等。重要,需精讀。
Deployment Description詳解、Context初始化參數、Listener、Attribute、SingleThreadModel、RequestDispatcher
Session機制、getSession(.)用法、URL rewriting、redirect時session的處理、HttpSession介面、cookie其他用法、Lifecycle Event、Session Migration、Session-related Listener
page directive、scriptlet中定義變數、declaration、由JSP檔案轉化而來的Servlet檔案的結構、implict object、JSP裡注釋的寫法、擷取init parameter方法、設定attribute的四種implicit object(Application、Request、Session、Page)、PageContext、13種page directive attribute、Expression Language (EL)、關閉EL的兩種方法
- Chap 8 scriptless JSP(96頁) 本章應精讀
bean-related standard actions、JavaBean Specification幾條重要原則、type與class、從HTML直接調用JSP、automatic string-to-primitive conversion、使用scriptlet來得到attribute的property的property、EL implicit object、必須用到scope object的情境、cookie與init params、EL functions、layout template、include directive與<jsp:include/>、個人化include content、<jsp:forward>、JSP Standard Tag Library 1.1 (JSTL 1.1)
<c:out> 、<c:foreach>、<c:if>、<c:choose>、<c:set>、<c:remove>、<c:import>、<c:url>、<error-page>、<c:catch>、JSTL 1.1提供的5種libraries、如何使用custom tags(非JSTL tag)、tag body、<uri>、<taglib-location>
- Chap 10 custom tag development (102頁) 本章應掌握主要情境
Tag Files、attribute directive、允許部署tag files的位置、tag handler、simple tag執行個體、JSPFragment、SkipPageException、Classic Tag Handler等內容
第三部分(第十一到第十四章)講解較進階、全域性的內容,每章主要內容如下:
- Chap 11 Web App部署(47頁) 本章應精讀
檔案結構、WAR檔案、配置Welcome/Error Page、配置Servlet initialization、XML-compiliant JSP、EJB-related/JNDI-related/mime-mapping DD tag
多個<security-constraint>有衝突時規則、programmatic security、authentication等
filter與container之比較、配置filter、wrapper class
- Chap 14 Enterprise Design Pattern(53頁)本章瞭解幾種設計模式及Struts的基本思想
Design Principles、remote object、Business Delegate、Service Locator、Transfer Object、MVC revisited、Struts in a nutshell
另:文中不時有一些概括性的圖表,可以列印出來供溫習及查閱。
關於:Head First 系列官方網站:Head First Labs
http://headfirstlabs.com/
已出的系列
Head First iPhone and iPad Development, Second Edition
Head First Python
Head First WordPress
Head First C#, Second Edition
Head First Excel
Head First Programming
Head First 2D Geometry
Head First iPhone Development
Head First Data Analysis
Head First PMP, Second Edition
Head First Networking
Head First Rails
Head First Algebra
Head First Web Design
Head First PHP & MySQL
Head First HTML with CSS & XHTML Code Magnet Kit
Head First C# Code Magnet Kit
Head First Java Code Magnet Kit
Head First SQL Code Magnet Kit
Head First JavaScript Code Magnet Kit
Head First Physics
Head First Statistics
Head First Ajax
Head First Servlets and JSP, Second Edition
Head First Software Development
Head First JavaScript
Head First SQL
Head First Object-Oriented Analysis and Design
Head First HTML with CSS & XHTML
Head First Java, Second Edition
Head First Design Patterns
Head First EJB
文中有很多搞笑的語句、圖畫。。。
畫面據說取自邵氏時代的香港功夫電影