Java web 開發(fā)教程學(xué)習(xí)心得
Javaweb開發(fā)教程學(xué)習(xí)心得
Javaweb課程結(jié)束了,在完成了eclipse三份實(shí)驗(yàn)報告之后我開始總結(jié)這門課程自己究竟學(xué)到了什么。
從C語言到Java,再到j(luò)sp,最后到j(luò)avaweb,一直都在與編程都打交道,學(xué)好它一是專業(yè)的需要,二是自己覺得它今后對自己會有很大的用途。C語言是一個面向過程的語言,而Java是一個面向?qū)ο蟮恼Z言。在C語言里,行為稱為函數(shù);在Java里,行為稱為方法。在C語言里,只有變量和函數(shù);在Java里,一切邏輯由類封裝,即“萬物皆對象”。C語言的struct和Java的類相似,但struct里只能有屬性,而類里可以有屬性和方法。所以,C語言的分工不清晰,主控程序幾乎承擔(dān)了全部的職責(zé);而Java可以把方法放在類里,對象的職能很多,可以單獨(dú)完成某個類的全部方法。
首先我想回顧一下javaweb這本書上的主要內(nèi)容:
第一章是對Web應(yīng)用程序的概述。從中我了解到Web應(yīng)用程序的三層體系結(jié)構(gòu):表示層、業(yè)務(wù)層、數(shù)據(jù)存取層。它們同是敘述在編寫代碼時應(yīng)做的規(guī)劃和應(yīng)遵循的規(guī)則,這種規(guī)劃在以后的學(xué)習(xí)中時有出現(xiàn),說明編程并不是一味地進(jìn)行循環(huán)判斷、死記硬背,而需要在技術(shù)上有所加強(qiáng)、在效率上有所提高。接下來學(xué)的是JSP知識。要學(xué)JSP,就必須會HTML,如果HTML學(xué)不通,這對以后的學(xué)習(xí)都是一個瓶頸。這點(diǎn)我有所體會。因?yàn)槲覍TML掌握得比較好,在這方面沒有遇到什么困難。但如果沒掌握好這些知識,加上要學(xué)新知識,就會在舊難題的基礎(chǔ)上增加新難題,兩頭招架,實(shí)有些吃不消。所以,基礎(chǔ)是很重要的,基礎(chǔ)一定要打扎實(shí),吃透,否則上層建筑的建起就不會很順利甚至沒法起步。然后是JavaBean。JavaBean里有set()和get()方法,用這些方法能很容易地傳值,邏輯上更標(biāo)準(zhǔn),代碼看起來也更規(guī)范。但set()和get()方法只是用來對屬性進(jìn)行操作的,所以如果是進(jìn)行復(fù)雜的邏輯或?qū)?shù)據(jù)庫進(jìn)行操作等,那么就不要寫成set()和get()方法,只用一個有返回值的方法就足以。這樣直觀方便,且符合規(guī)范。
接著是Servlet。它給我的第一感覺是很專業(yè)、很難懂。書上介紹了一大堆接口、類、和重寫的方法,一時覺得暈頭轉(zhuǎn)向。后來用得多、看得多了,Servlet的基本格式也記得差不多,其實(shí)也沒什么難的。只要記住Servlet是一個用Java編寫的應(yīng)用程序,在服務(wù)器上運(yùn)行,用來處理請求和響應(yīng),也可以單獨(dú)做為一個Web頁面。
在JDBC技術(shù)這章,我感到學(xué)習(xí)的壓力。JDBC的工作原理、JDBC的分類、它的主要接口、以及它連接數(shù)據(jù)庫的基本過程和運(yùn)行效果等事先后我沒有聽懂。后來在圖書館借到了一本資料書電子工業(yè)出版社出版的《JavaWeb從初學(xué)到精通》適合Java開發(fā)Web應(yīng)用和J2EE方面的初學(xué)者加上編程實(shí)戰(zhàn)演習(xí),總算弄懂了點(diǎn)眉目。
最后一章主要是一些技術(shù)專題。例如訪問路徑問題、結(jié)果集處理、復(fù)雜查詢等。在前面幾章的的能力功底基礎(chǔ)上這章顯得要簡單輕松地多。大致類似于對前面知識的系統(tǒng)總結(jié)。
以上就是對這個階段學(xué)習(xí)的一段回顧。接下來我想總結(jié)一下自己的學(xué)習(xí)心得:首先學(xué)習(xí)這門課程,就必須先要了解什么是web應(yīng)用。通過瀏覽器可以訪問新浪網(wǎng)、中華網(wǎng)、淘寶網(wǎng)、網(wǎng)易、搜狐網(wǎng)、微軟的網(wǎng)站及sun公司的網(wǎng)站等,這些就是Web應(yīng)用。對于web應(yīng)用,我們需要使用瀏覽器,通過網(wǎng)絡(luò)訪問在遠(yuǎn)程的服務(wù)器運(yùn)行的程序。Web應(yīng)用指的就是這些網(wǎng)站中的程序。
其次,是編程。學(xué)習(xí)編程最重要的就是勤記憶,勤練習(xí),勤思考。需要記憶很多,有些東西必須要死記,沒有偷懶的辦法,在記憶的時候可以找一些規(guī)律,比如把類似的東西歸在一起記憶。平時在做練習(xí)的時候書上的例題和習(xí)題很重要,只要把書上的例子吃透,課后的習(xí)題都會做,這樣就能達(dá)到掌握知識的目的,最后在期末復(fù)習(xí)的過程中要不時地復(fù)習(xí)前面的知識,這樣才能熟練掌握所學(xué)的知識。在勤思考方面,就是在平時的編程演練中遇到困難的時候不要立刻急著去問身邊的同學(xué)或是老師,自己應(yīng)當(dāng)對照課本或是相關(guān)的學(xué)習(xí)資料慢慢進(jìn)行修改,只有在自己確實(shí)已經(jīng)盡力但仍然不知如何操作的情況下才可以去詢問別人,只有這樣才可以加深自己的影響。
還記得自己當(dāng)初最開始時學(xué)習(xí)java的情景。那時自己除了知道什么是繼承,封裝,多態(tài),抽象類,接口這些外,其他的就什么都部知道了。后來自己在慢慢摸索的過程中才逐漸積累了對這門學(xué)科的敏感度開始接觸Java覺Servlet是一個非常深奧的技術(shù)。我曾經(jīng)想學(xué)習(xí)網(wǎng)頁設(shè)計,看到HTML哪些松散的標(biāo)記,我放棄了,最終也沒有學(xué)會做網(wǎng)頁。只知道網(wǎng)頁編輯工作有Drameware或FrontPage。當(dāng)接觸Serlvet后,發(fā)現(xiàn)做網(wǎng)頁竟然也可以像寫Java程序一樣進(jìn)行編寫。完成第一個用Servlet寫的WEB版的HelloWorld程序,足足花費(fèi)了我半天時間。主要是花費(fèi)在環(huán)境搭配上面。一個小小的HELLOWorld,用Drameware可能也就一分鐘就能搞定的事。對于一個完全不懂HTML的人來說,要想用Servlet來開發(fā)動態(tài)WEB應(yīng)用還是太難了。接下來很快就接觸到了JSP。JSP并不需要我在Java程序里寫HTML代碼,而是變成了在HTML中寫Java程序。初學(xué)時,所有的數(shù)據(jù)庫連接,數(shù)據(jù)庫訪問,數(shù)據(jù)顯示,業(yè)務(wù)代碼和HTML標(biāo)記等都寫在JSP代碼中,感覺JSP真是無所不能。在做一些小應(yīng)用時,開發(fā)速度也非常的快。而當(dāng)遇到了比較復(fù)雜的業(yè)務(wù)邏輯后,JSP開發(fā)就像是一個惡夢,每天大量的工作就是調(diào)試頁面,當(dāng)其它頁面需要類似的功能時,進(jìn)行代碼拷貝來進(jìn)行代碼的復(fù)用,后來才知道這就是典型的Model1模型。當(dāng)把JSP與Servlet相結(jié)合后,一切都發(fā)生了改變。JSP僅用于數(shù)據(jù)展示,而Servlet用于進(jìn)行業(yè)務(wù)調(diào)用和頁面流程控制,這就是所謂的Model2模型。原來JSP并不是Servlet的替代品,JSP更需要與Servlet進(jìn)行合作。再明白了Servlet與的重要后,才回過頭開始去學(xué)習(xí)Servlet,包括Servlet的生命周期,Servlet的重要接口及方法,自定義標(biāo)簽等。通過這樣反復(fù)的聯(lián)系我終于在面對java和jsp時不再像以前那樣那么沒有自信了。
所以花費(fèi)些力氣去學(xué)習(xí)Java基礎(chǔ),學(xué)習(xí)Jsp,Servlet,甚于學(xué)HTML,Javascript對進(jìn)行Web開發(fā)都是十分必要的。
最后我想總結(jié)一下學(xué)習(xí)方向的建議,JAVA基礎(chǔ)知識是學(xué)習(xí)任何JAVA擴(kuò)展體系知識的前提,所以在學(xué)習(xí)javaweb的過程中,一定得抽時間學(xué)習(xí)JAVA基礎(chǔ),窩在圖書館找到了基本相關(guān)的讀物《Java核心技術(shù)》《Java編程思想》和JDK的API文檔。另外由于編程有一些專用的英語術(shù)語,因此學(xué)好一些必要與之相關(guān)的英語對我們今后更好地學(xué)習(xí)這門學(xué)科是很有幫助的。
擴(kuò)展閱讀:Web開發(fā)技術(shù)實(shí)用教程總結(jié)
Web開發(fā)技術(shù)實(shí)用教程課程總結(jié)
學(xué)院:信息工程學(xué)院專業(yè):計算機(jī)科學(xué)與技術(shù)班級:姓名:學(xué)號:
一、Javaweb課程結(jié)束了,在完成了eclipse三份實(shí)驗(yàn)報告之后我開始總結(jié)這門課程自己究竟學(xué)到了什么。
二、從C語言到Java,再到j(luò)sp,最后到j(luò)avaweb,一直都在與編程都打交道,學(xué)好它一是專業(yè)的需要,二是自己覺得它今后對自己會有很大的用途。C語言是一個面向過程的語言,而Java是一個面向?qū)ο蟮恼Z言。在C語言里,行為稱為函數(shù);在Java里,行為稱為方法。在C語言里,只有變量和函數(shù);在Java里,一切邏輯由類封裝,即“萬物皆對象”。C語言的struct和Java的類相似,但struct里只能有屬性,而類里可以有屬性和方法。所以,C語言的分工不清晰,主控程序幾乎承擔(dān)了全部的職責(zé);而Java可以把方法放在類里,對象的職能很多,可以單獨(dú)完成某個類的全部方法。在這期間我們或多或少的都學(xué)到了一點(diǎn)關(guān)于這門課的知識,下面我來做一下我自己對于這門課的總結(jié)。三、重要的章節(jié)
1、第二章HTML和XHTML
在本章中,我們首先要了解HTML和XHTML的意義和重要性。HTML是超文
本標(biāo)記語言,XHTML是擴(kuò)張超文本標(biāo)記語。
1.1對于Html我們要了解html文件的基本結(jié)構(gòu),html文檔有許多元素,構(gòu)成html
文檔基本結(jié)構(gòu)的主要三個元素是:html元素、head元素和body元素。
1.2掌握HTML的基本標(biāo)簽;html、head、title、dody、div等等。例:
段落標(biāo)簽的示例
p標(biāo)簽定義的一段文字
p標(biāo)簽定義的另一段文字
沒有p標(biāo)簽定義的一段文字
沒有p標(biāo)簽定義的另一段文字
運(yùn)行結(jié)果如下:
1.3對于XHTML,我們要掌握XHTML文檔類型定義(XHTMLDTD)例如:
等。
通過對本章內(nèi)容的了解,我們對網(wǎng)絡(luò)有了基礎(chǔ)的認(rèn)識,東得了HTML和XHTML等。
2、第三章CSS技術(shù)
2.1掌握CSS基本語法
CSS的基本格式:內(nèi)聯(lián)樣式
如:
在頁面文件中定義內(nèi)部樣式表。如:選擇符1,選擇符2,...{樣式屬性名1:屬性值1;樣式屬性名2:屬性值2;...}...-->
在頁面文件中嵌入外部樣式表。如:
2.2CSS基本屬性:CSS背景屬性、CSS文本屬性等。
CSS背景屬性:
(1)background-color(2)Background-image(3)Background-repeat(4)Background-attachment(5)Background-positionCSS文本屬性:(1)text-indent(2)Text-align(3)Vertical-align(4)Line-height(5)Letter-spacing
通過對該章內(nèi)容的了解,我們系統(tǒng)的認(rèn)識了CSS技術(shù)以及它的相關(guān)知識。
3、第八章JSP簡介
3.1JSP工作原理:在一個JSP文件第一次被請求時,JSP引擎把該JSP文件轉(zhuǎn)
換成為一個servlet。而這個引擎本身也是一個servlet,在JSWDK或WEBLOGIC
中,它就是JspServlet。JSP引擎先把該JSP文件轉(zhuǎn)換成一個Java源文件,在轉(zhuǎn)
換時如果發(fā)現(xiàn)jsp文件有任何語法錯誤,轉(zhuǎn)換過程將中斷,并向服務(wù)端和客戶端
輸出出錯信息;如果轉(zhuǎn)換成功,JSP引擎用javac把該Java源文件編譯成相應(yīng)的class文件。然后創(chuàng)建一個該SERVLET的實(shí)例,該SERVLET的jspInit()方法
被執(zhí)行,jspInit()方法在servlet的生命周期中只被執(zhí)行一次。然后jspService()方
法被調(diào)用來處理客戶端的請求。對每一個請求,JSP引擎創(chuàng)建一個新的線程來處
理該請求。如果有多個客戶端同時請求該JSP文件,則JSP引擎會創(chuàng)建多個線程。
每個客戶端請求對應(yīng)一個線程。以多線程方式執(zhí)行可大大降低對系統(tǒng)的資源需求,
提高系統(tǒng)的并發(fā)量及響應(yīng)時間.但應(yīng)該注意多線程的編程限制,由于該servlet始
終駐于內(nèi)存,所以響應(yīng)是非?斓摹H绻.jsp文件被修改了,服務(wù)器將根據(jù)設(shè)置
決定是否對該文件重新編譯,如果需要重新編譯,則將編譯結(jié)果取代內(nèi)存中的
servlet,并繼續(xù)上述處理過程。雖然JSP效率很高,但在第一次調(diào)用時由于需要
轉(zhuǎn)換和編譯而有一些輕微的延遲。此外,如果在任何時候如果由于系統(tǒng)資源不足
的原因,JSP引擎將以某種不確定的方式將servlet從內(nèi)存中移去。當(dāng)這種情況發(fā)
生時jspDestroy()方法首先被調(diào)用,然后servlet實(shí)例便被標(biāo)記加入"垃圾收集"處
理。jspInit()及jspDestory()格式如下:可在jspInit()中進(jìn)行一些初始化工作,如建
立與數(shù)據(jù)庫的連接,或建立網(wǎng)絡(luò)連接,從配置文件中取一些參數(shù)等,在jspDestory()
中釋放相應(yīng)的資源
3.2JSP的特點(diǎn):
(1)將內(nèi)容的生成和顯示分離。(2)生成可重用組件。
(3)采用標(biāo)識簡化頁面開法。
3.3Tomcat服務(wù)器的安裝和配置在安裝Tomcat服務(wù)器環(huán)境前,應(yīng)先在系統(tǒng)中安裝Java運(yùn)行環(huán)境JDK。配置好JDK環(huán)境后,接下來安裝Tomcat。按照課本步驟進(jìn)行安裝Tomcat6.0。
安裝完成后進(jìn)行Tomcat服務(wù)器的配置和測試:按照“開始”|“程序”|“ApacheTomcat6.0”“|ConfigueTomcat”,在彈出的對話框中單擊Start按鈕啟動Tomcat。
3.4JSP的基本語法基本的JSP頁面可以由HTML標(biāo)記和JSP元素共同組成,其中JSP代碼被標(biāo)記在“”之間?梢允褂萌魏挝谋揪庉嬈鱽砭帉慗SP代碼,文件編寫好后以擴(kuò)張名.JSP保存。
例:
一個簡單的JSP程序
Voidprintln()4.2config
config對象的概述:是JSP的內(nèi)置對象
config對象對應(yīng)于javax.servlet.ServletConfig類,此類位于servlet-api.jar包中。Web
容器在初始化時使用一個ServletConfig(即config)對象向JSP頁面?zhèn)鬟f信息,此配置信息包
括初始化參數(shù),以及表示Servlet或JSP頁面所屬Web應(yīng)用的ServletContext對象。Config
對象的幾個方法:(1)publicStringgetParameter(Stringname);返回制定的名稱
name初始化參數(shù)的值,如果參數(shù)不存在則返回null。(2)public
java.util.EnumerationgetinitParameterNames();得到所有初始化參數(shù)名稱的
枚舉。(3)publicServletContextgetServletContext();返回Servlet或
JSP頁面所屬的ServletContext的一個引用。(4)publicString
getServletName();返回Servlet實(shí)例或JSP頁面的名稱,此名稱可以在Web
應(yīng)用部署描述文件中指定,對于一個未注冊,Servlet實(shí)例或JSP頁面,將返回該
Servlet類的類名。JSP的其他內(nèi)置對象:request、response、session、
application、out、exception、pageContext。3。config.execonfig-config.exe
-進(jìn)程信息進(jìn)程文件:ConfigurationUtility描述:config.exe是
WindowsAccess(WAC)服務(wù)相關(guān)程序。CONFIG.SYS是包含在DOS(磁盤
操作系統(tǒng),DiskOperatingSystem)中的一個文本文件命令,它告訴操作系統(tǒng)計
算機(jī)如何初始化。多數(shù)情況下,CONFIG.SYS命令制定內(nèi)存設(shè)備驅(qū)動和程序,以
控制硬件設(shè)備;開啟或進(jìn)制系統(tǒng)特征;以及限制系統(tǒng)資源。CONFIG.SYS在
autoexec.bat(自動批處理程序)文件執(zhí)行前載入。由于CONFIG.SYS是一個文
本文件,因此它可以使用文本編輯程序編輯。4。X
(c.d.e.f....):\\WINDOWS\\system32\\configwindowsXP或者Vista下,開始運(yùn)行輸入“config”,出現(xiàn)C:\\WINDOWS\\system32\\config。例:web.xml:....
demo
/chapter9/jsp-11.jsp
name
ChenYi
name
XXXX@yahoo.com
demo
/demo.
...
運(yùn)行結(jié)果如下:
通過對本章內(nèi)容的了解和掌握,我們清楚的認(rèn)識了config的相關(guān)內(nèi)容,以及對
JSP的進(jìn)一步了解和掌握。
5JSP文件的操作
5.1File類
File類的創(chuàng)建:(1)File通過將給定路徑名字符串轉(zhuǎn)換成抽象路徑名來創(chuàng)建一個
新File實(shí)例。
File根據(jù)parent路徑名字符串和child路徑名字符串創(chuàng)建一個新File實(shí)例。
File根據(jù)parent抽象路徑名和child路徑名字符串創(chuàng)建一個新File實(shí)例。
5.2文件的操作
讀取文件:實(shí)際在JSP中使用的是Reader的子類java。io.FileReader,同時為
了提高輸入效率,可以使用帶緩沖的輸入流方式來讀取文件資源。
在寫入文件中,同樣可以使用字節(jié)流和字符流兩種方式,使用字符輸出流Writer
的子類java.io.FileWriter,也可以使用緩沖的方法來提高輸出效率。5.3文件上傳
jspSmartUpload包含有5個類。File:上傳文件的抽象表示類
File:包含多個上傳文件的File實(shí)例。
Rrquest:等價于Servlet的ServletRequest類。SmartUpload:實(shí)現(xiàn)上傳的類。
SmartUploadException:上傳拋出的異常類。File的常用方法:voidsavAs(String)voidsaveAs(String,int)StringgetFileExt()StringgetFileName()StringgetFilePathName()intgetSize()
booleanisMissing()
6第十一章JSP訪問Web數(shù)據(jù)庫
6.1JDBC對數(shù)據(jù)庫的一次操作步驟:裝載JDBC驅(qū)動程序。定義鏈接字符串。和數(shù)據(jù)庫建立連接。創(chuàng)建表達(dá)式對象。執(zhí)行數(shù)據(jù)庫操作。處理返回結(jié)果。關(guān)閉數(shù)據(jù)庫連接。
6.2數(shù)據(jù)庫的連接方式:JDBC-ODBC橋
部分java,部分?jǐn)?shù)據(jù)庫專用API中間件訪問
純java驅(qū)動訪問6.3數(shù)據(jù)庫的訪問
將在MySQL數(shù)據(jù)庫上進(jìn)行簡單的數(shù)據(jù)表的操作來說明JSP中如何實(shí)現(xiàn)數(shù)據(jù)的插入、查詢、更新和刪除等操作。例:
刪除employee中記錄
運(yùn)行結(jié)構(gòu)如下:
心得:JAVA基礎(chǔ)知識是學(xué)習(xí)任何JAVA擴(kuò)展體系知識的前提,所以在學(xué)習(xí)java
web的過程中,一定得抽時間學(xué)習(xí)JAVA基礎(chǔ),窩在圖書館找到了基本相關(guān)的
讀物《Java核心技術(shù)》《Java編程思想》和JDK的API文檔。另外由于編程
有一些專用的英語術(shù)語,因此學(xué)好一些必要與之相關(guān)的英語對我們今后更好地學(xué)
習(xí)這門學(xué)科是很有幫助的。
友情提示:本文中關(guān)于《Java web 開發(fā)教程學(xué)習(xí)心得》給出的范例僅供您參考拓展思維使用,Java web 開發(fā)教程學(xué)習(xí)心得:該篇文章建議您自主創(chuàng)作。
來源:網(wǎng)絡(luò)整理 免責(zé)聲明:本文僅限學(xué)習(xí)分享,如產(chǎn)生版權(quán)問題,請聯(lián)系我們及時刪除。