這段時間事情比較多,沒有時間寫,所以決定從我的書中拷貝內容共用給大家。下面的內容是書的前言,是關於這本書運用的思想以及主要的內容。這些思想也是我多年授課的經驗積累。
在作者多年的教學過程中,使用了多本JSP的教材,應該說都寫得挺好的。但是瞭解到的情況是學生聽課的時候可以聽懂,但是學完之後不知道怎麼去使用,讓學生自己編寫一個網站還是有困難。所以這幾年也一直在研究原因,逐漸發現了一些問題,並且想了一些方法來解決,另外也在一些班級進行了實驗,效果比較好。現在想把這些想法與其他老師分享,讓學生也能學有所用,所以有了寫這本書的想法。
本書運用的思想
應用驅動而不是知識點驅動現有教材的編寫風格基本都是按照JSP知識點的分類來進行的,例如:JSP概述、JSP基礎、內部對象、JSP動作和指令、JavaBean、JDBC、運算式語言、國際化、標準標籤庫等。這些教材都是以知識點驅動的,強調的是知識點。而在實際應用中我們需要解決各種問題,不同的問題需要不同的知識點,是以問題為驅動的,所以本書準備以應用為中心,圍繞如何解決應用中的問題進行講解,完成相關功能需要什麼知識點,就介紹什麼知識點。同時為了學生能夠全面掌握知識,會在每一部分列出相關的知識點。
完整的項目而不是不相關的例子多數JSP圖書的不同章節採用的執行個體都沒有關聯性,這樣在學完整個課程之後,學生會感覺例子很亂。本書的所有內容都圍繞一個項目進行,每一部分完成項目的一個功能,實訓也是整個項目的一部分。這樣當課程結束之後,學生就可以完成一個完整的項目。
不僅教您如何?,並且教您如何設計對於每一個例子,不僅僅教您如何編寫程式,更重要的是如何進行設計,這樣學生就可以觸類旁通了。
先模仿後自創教師每次介紹完一個案例之後,學生都會完成一個類似的功能,通過這樣的模仿來加深所學的知識。最後由學生再獨立完成一部分功能。
實訓與授課並重每部分內容都包括教師講授和學生實訓兩部分。理論教材和實訓教材結合使用。
JSP
用於顯示,Servlet
用於控制在JSP的發展早期,開發Java Web應用的方式主要是在網頁中嵌入Java代碼,這種方式的弊端逐漸被認識到。而Java Web開發經常是多種技術協同完成的,JSP主要完成與使用者的互動過程,不應該包含處理代碼和控制碼。而Servlet在顯示資訊方面沒有優勢,所以堅決不要使用Servlet顯示資訊。本書嚴格遵循這種思想。
本書的內容組織整個課程就是一個項目,該項目是比較通用的項目:網上書店系統,把整個項目分成三個部分:l 圖書資訊管理l 使用者管理l 購物車和訂單管理每一部分的內容基本上都覆蓋了JSP的所有知識點。整個課程的安排按照兩條線進行:教師授課和學生實訓。
教師授課授課內容是使用者管理功能部分。把使用者管理功能分解成各個小的案例,每個案例都可以完成一個功能,每個案例包含若干知識點。授課方式採用邊講解邊帶領學生操作,把知識點融合在案例中。
學生實訓實訓內容是圖書資訊管理部分。每一節課之後都會有一個學生實訓,這個實訓與本次課的授課內容吻合。與教師講解的案例功能基本相同。例如,教師講解使用者資訊修改功能,學生實訓的內容就是圖書資訊修改功能。
綜合實訓在完成基本內容的講解和實訓之後,在本書的最後是一個綜合執行個體:購物車和訂單管理。這部分內容由教師介紹知識點,然後由學生進行實訓。
內容新穎本書中的內容是根據JSP的最新規範編寫的。
採用模式MVC模式是幾乎所有Java Web架構所採用的模式,本書在介紹Java Web開發相關的技術時,完全採用MVC模式。JSP主要用於顯示資訊,所以在用到JSP的時候,避免在JSP中嵌入Java代碼。雖然Servlet能夠像JSP一樣向使用者顯示資訊,但是Servlet主要用於控制,顯示的功能應該在JSP檔案中。所以在介紹Servlet的時候,嚴格按照這種思想,只在Servlet中編寫控制碼。
偵錯工具學習任何一門語言,偵錯工具的能力都是一項非常基礎但卻非常重要的能力。本書專門使用一章的內容對常見的錯誤進行了分析,並對常用的調試方法進行了介紹。
編寫方法首先描述目標,然後通過運行效果進一步展示目標,根據目標分析編程思路,最後一步一步告訴讀者如何編寫這個代碼。
學習目標n 建立一個網站包括搭建運行環境,建立網站的架構。n 展示資訊可以採用多種向使用者展示資訊的方式,通常情況下展示資訊是Web應用的最基本的功能。n 資訊提交通過介面提交資訊到伺服器是網站中資訊更新功能所必需的。n 資訊檢索資訊檢索功能能夠協助使用者從網站提供的大量資訊中尋找需要的資訊。這樣的功能對於一個資訊量非常大的網站來說是必不可少的。n 資訊處理能夠完成網站中資訊處理。n 資訊管理能夠管理各種網站中的大量的資訊。n 安全控制包括登入功能和許可權控制。n 異常處理能夠處理網站中的各種異常。n 分頁顯示分頁顯示在很多網站中都存在,學習完本課程,讀者應該能夠掌握。n 能夠完成購物車管理幾乎所有的電子商務網站中都有購物車功能,學習完本課程應該能夠編寫各種網站中的購物車。
主要內容第1章對Web應用進行概述,以及如何搭建Java Web應用的運行環境,如何建立一個Web應用。通過本章的學習,讀者應該能夠知道什麼是Java Web應用,開發Web應用需要哪些條件,如何建立一個Web應用。第2章和第3章解決Java Web應用的輸入和輸出問題。第2章,介紹如何在Java Web應用中使用各種表單提交資訊,並且如何在用戶端使用JavaScript代碼對使用者輸入的各種資訊進行驗證。通過本章的學習,讀者應該能夠解決Web應用中的輸入問題。第3章,介紹如何在Java Web應用向使用者輸出資訊,介紹了各種輸出資訊的方式。通過本章的學習,讀者應該能夠掌握Java Web應用的輸出。第4章到第6章,對登入功能進行了3次重構,基本上就是Java Web技術的發展曆史。第4章,使用純JSP檔案了完成了登入功能。第5章中,把登入的處理過程提取出來使用JavaBean封裝,形成了JSP+JavaBean的模式。第6章中,把JSP中的控制功能提取出來,使用Servlet實現,形成了JSP+Servlet+JavaBean的模式。同時在第6章中引入了MVC模式。第7章到第10章,進一步強化MVC模式,並介紹對資料庫的常用操作。第7章中首先介紹了如何使用JDBC完成對資料庫的操作,以及如何使用串連池完成對資料庫的操作,最後實現了使用者資訊的查看功能。第8章介紹了在Java Web應用中的分頁顯示,包括在JavaBean中如何?分頁以及在JSP頁面如何?分頁。第9章通過使用者資訊的添加進一步強化了資料庫相關的操作和MVC模式。第10章通過使用者資訊的修改和刪除介紹了Java Web應用中修改和刪除功能的一般實現方式。第11章到第13章介紹了Java Web應用的國際化、異常處理和安全問題。第11章通過使用者資訊查看介面的國際化介紹如何?Java Web應用的國際化。第12章首先分析了Web應用中可能出現的異常,並介紹了多種異常處理的方式,包括Java異常處理機制,JSP的異常處理機制,通過設定檔進行的異常處理機制。第13章介紹了Java Web應用中的安全問題及解決方案,包括使用session完成基本的安全控制、使用過濾器完成單個的安全控制、使用過濾器完成集中的安全控制、頁面中部分代碼的安全控制和使用圖形驗證碼的安全控制。第14章是綜合實訓,分析了購物車功能和訂單管理功能的主要編寫思路,並給出了關鍵的知識點,讀者可以根據這些講解自己完成購物車和訂單。通過這個綜合實訓,讀者應該能夠掌握Java Web開發基本技能。第15章介紹了在編寫和運行Java Web應用的過程中經常出現的錯誤以及偵錯工具,偵錯工具的能力是程式員必須具有的。第15章的內容可以加快讀者掌握這種能力的速度。在書的後面跟了3個附錄。附錄1是在Java Web開發中常用的知識點,可以方便讀者的學習。附錄2是JSP技術中非常重要的介面的方法,讀者在學習的過程中可以尋找使用。附錄3是本書內容的索引,因為本書沒有按照其他書那樣按照知識點分章節,而是按照應用劃分,如果先尋找知識點可以通過該索引。
給學生的建議一定要動手寫程式,只有動手了,才能發現問題,因為最終目的還是動手。不要害怕出錯,編寫程式不可能不出錯,熟練之後,出錯就會少了。充分利用網路,網路上的各種資源非常豐富。要好好學習英語,很多文檔都是英文的。好好學習Java基礎,JSP的文法本書不多,難就難在Java語言本身。
給老師的建議應該給學生動手的時間,不管您講的有多好,如果學生不自己動手,一切都是白費。協助學生偵錯工具,偵錯工具的時候要給學生講,最好能夠把你偵錯工具過程中心中想的東西告訴學生。要鼓勵學生試著自己偵錯工具。
預備知識 預備知識包括兩個方面:Java、HTML和JavaScript語言。Java Web開發技術是以Java語言為基礎,檔案的編寫使用的都是Java的基本文法,最後運行也是按照Java程式的運行方式啟動並執行。如果讀者對Java不熟悉,需要補習一下Java。能夠用到的Java的知識包括:Java的基本文法,包括標識符、運算子、變數、方法和流程式控制制等。Java的物件導向特性,包括包、類、介面的定義和使用。Java的常用類庫,包括字串相關的String和StringBuffer,日期處理相關的Date和Calendar,日期和數位格式化DateFormate和NumberFormat,Collection架構等。異常處理,在編寫Java檔案的時候不可避免的要使用。對於HTML語言,我們需要掌握最基本的文法,包括以下幾個方面:網頁的結構表單元素JavaScript語言在用戶端執行,所以如果希望在瀏覽器端執行功能,就需要使用JavaScript語言。現在在網站中使用比較多的JavaScript內容包括:用戶端驗證。
進一步學習建議Java Web開發技術屬於Java企業級應用的一部分,屬於Java企業級應用中的Web層。如果想更完整的學習Java企業級應用的各方面,可以學習Java EE企業級開發技術。包括企業級JavaBean(EJB)技術和RMI、JNDI、JTA、JTS、資料來源、JavaMail、JAAS、連接器等服務。另外書中介紹的Java Web開發技術最基本的關於Java Web開發的技術。為了提高Web應用的開發效率和Web應用的管理維護,出現了很多基於Java Web技術的架構。這些架構可以提高開發的效率,能夠方便對Web應用的維護。常見的Web應用程式框架有:JSF、Struts、Tapestry和WebWork。其中JSF、Struts、Tapestry和WebWork屬於Web層架構,主要用於開發Web應用,功能基本相同,各有千秋。在Java企業級應用的最新版本中,JSF已經屬於Java Web技術的一個組成部分。讀者可以選擇一種Web應用程式框架進行學習。除了這些Web應用程式框架之外,還有一些能夠簡化對資料庫進行操作的技術,通常稱為持久層架構,常見的有Hibernate和TopLink。Hibernate相對來說比較流行,在很大程度上影響了後來的EJB3中Java持久性的規範。讀者可以從中選擇其一進行學習,當然如果讀者要學習Java企業級應用,則可以不用學習這些持久性架構,因為在Java企業級應用中包含了Java持久性API,另外在Java企業級應用的早期版本中還有實體Bean。另外還有一個比較流行的技術Spring,這是一個企業級應用的架構,與Java EE平行。只是它不屬於Java企業級應用開發的標準,但卻非常成功。也是讀者可以選擇學習的一個不錯的技術。想跟我學就行動起來吧。下一講:
第二講 Web應用概述
李緒成
CSDN Blog
:
http://blog.csdn.net/javaeeteacher
邀請您為好友:
http://student.csdn.net/invite.php?u=124362&c=7be8ba2b6f3b6cc5