第1章 Java EE開發(fā)環(huán)境_第1頁
第1章 Java EE開發(fā)環(huán)境_第2頁
第1章 Java EE開發(fā)環(huán)境_第3頁
第1章 Java EE開發(fā)環(huán)境_第4頁
第1章 Java EE開發(fā)環(huán)境_第5頁
已閱讀5頁,還剩68頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

第1章項(xiàng)目開發(fā)入門:JavaEE開發(fā)環(huán)境

1.1JavaEE環(huán)境搭建1.21.3MyEclipse10操作入門JavaEE傳統(tǒng)開發(fā)J2EE發(fā)展簡史1990,Green項(xiàng)目組創(chuàng)建Oak語言,這就是Java語言的前身1996年1月,Sun發(fā)布Java1.0

1998年夏末又推出了Java2.01999年,為了將Java2的應(yīng)用拓展到各個(gè)領(lǐng)域中,Sun推出了三個(gè)版本的Java2平臺,這就是J2ME、J2SE和J2EE,J2EE由此誕生了動態(tài)Web編程技術(shù)的發(fā)展歷史公共網(wǎng)關(guān)接口CGI(CommonGatewayInterface)

是WWW技術(shù)中最重要的技術(shù)之一,有著不可替代的重要地位。CGI是外部應(yīng)用程序(CGI程序)與Web服務(wù)器之間的接口標(biāo)準(zhǔn),是在CGI程序和Web服務(wù)器之間傳遞信息的規(guī)程。Servlet是一種服務(wù)器端的Java應(yīng)用程序,具有獨(dú)立于平臺和協(xié)議的特性,可以生成動態(tài)的Web頁面。它擔(dān)當(dāng)客戶請求(Web瀏覽器或其他HTTP客戶程序)與服務(wù)器響應(yīng)(HTTP服務(wù)器上的數(shù)據(jù)庫或應(yīng)用程序)的中間層。Servlet是位于Web服務(wù)器內(nèi)部的服務(wù)器端的Java應(yīng)用程序。

第1章J2EE開發(fā)介紹J2EE是目前世界上開發(fā)Web應(yīng)用(特別是企業(yè)級Web應(yīng)用)最流行的平臺之一,從銀行、證券系統(tǒng)到企業(yè)信息化平臺都使用J2EE。SunMicrosystems公司在1996年推出了一種新的純面向?qū)ο蟮木幊陶Z言,命名為Java。根據(jù)不同的應(yīng)用領(lǐng)域?qū)ava語言劃分為三大平臺:●Java2PlatformMicroEdition

簡稱J2ME,Java2平臺微型版。用于開發(fā)掌上電腦、手機(jī)等移動通信設(shè)備上使用的嵌入式系統(tǒng)。●Java2PlatformStandardEdition簡稱J2SE,Java2平臺標(biāo)準(zhǔn)版。主要用于開發(fā)一般臺式機(jī)應(yīng)用程序。●Java2PlatformEnterpriseEdition

簡稱J2EE,Java2平臺企業(yè)版。主要用于快速設(shè)計(jì)、開發(fā)、部署和管理企業(yè)級的軟件系統(tǒng)。這里,將構(gòu)建一個(gè)網(wǎng)上書城,如圖1-1所示。它是一個(gè)進(jìn)行書籍銷售的電子商務(wù)系統(tǒng)。用戶通過網(wǎng)上書城,可以瀏覽各種書籍信息。如果對某種圖書感興趣,可以將該圖書添加到購物車。另外,用戶隨時(shí)可以查看購物車中圖書的狀況。購物完成后,結(jié)帳并提交訂單。

了解使用框架技術(shù)的好處結(jié)構(gòu)統(tǒng)一,便于人事閱讀不用考慮布局、排版等,提高效率可專心在簡歷內(nèi)容上新手也可以作出專業(yè)的簡歷為什么需要框架技術(shù)如何更快更好地寫簡歷?使用Word簡歷模板思考:使用模板有什么好處呢?為什么需要框架技術(shù)如何更快更好地蓋房子?使用預(yù)制的架構(gòu)直接組裝汽車,不用自己造輪子站在巨人的肩膀上,享用前人經(jīng)驗(yàn)和智慧什么是框架技術(shù)“框架技術(shù)”幫我們更快更好地構(gòu)建程序:是一個(gè)應(yīng)用程序的半成品提供可重用的公共結(jié)構(gòu)按一定規(guī)則組織的一組組件優(yōu)勢:不用再考慮公共問題專心在業(yè)務(wù)實(shí)現(xiàn)上結(jié)構(gòu)統(tǒng)一,易于學(xué)習(xí)、維護(hù)新手也可寫出好程序概念說明舉例技術(shù)解決某一類問題的方法鍛造技術(shù)JSP技術(shù)、JDBC技術(shù)XML技術(shù)、JavaScript技術(shù)組件應(yīng)用程序里可重用的“零件”空心鋼管、鉚釘分頁組件、控制器組件、視圖組件框架一系列組件,按照一定的結(jié)構(gòu)組合在一起。作為系統(tǒng)開發(fā)的平臺。自行車車架Struts、Spring、Hibernate、WebWork、JSF、EJBDWR框架系統(tǒng)實(shí)現(xiàn)完整功能的應(yīng)用程序自行車物流管理系統(tǒng)、銷售系統(tǒng)概念辨析技術(shù)、組件、框架和系統(tǒng)開發(fā)完成后,發(fā)布到Web服務(wù)器上,它們的關(guān)系如圖1.1所示。1.1JavaEE環(huán)境搭建1.1.1開發(fā)環(huán)境安裝1.下載安裝JDK7(1)設(shè)置系統(tǒng)變量JAVA_HOME。右擊桌面“我的電腦”圖標(biāo),選擇【屬性】→【高級】選項(xiàng)卡,單擊【環(huán)境變量】按鈕,彈出【環(huán)境變量】對話框,如圖1.2所示。1.1.1開發(fā)環(huán)境安裝(2)在“系統(tǒng)變量”列表下單擊【新建】按鈕,彈出【新建系統(tǒng)變量】對話框,在“變量名”文本框中輸入“JAVA_HOME”,“變量值”文本框中輸入JDK的安裝路徑“C:\ProgramFiles\Java\jdk1.7.0_07”,如圖1.3(a)所示。1.1.1開發(fā)環(huán)境安裝設(shè)置系統(tǒng)變量PATH。在“系統(tǒng)變量”列表中找到名為“PATH”的變量,單擊【編輯】按鈕,確?!白兞恐怠弊址幸鸭尤肼窂健?JAVA_HOME%\bin;”或添加了“;C:\ProgramFiles\Java\jdk1.7.0_02\bin”,如圖1.3(b)所示。2.1.1運(yùn)行環(huán)境—JDKJDK的下載、安裝及設(shè)置下載JDK 下載地址:/javase/downloads/index.jsp下載文件:jdk-6u7-windows-i586-p.exe(Windows平臺)安裝JDKJDK環(huán)境變量設(shè)置

這里需要配置三個(gè)屬性,配置信息如下:Java_Home C:\ProgramFiles\Java\jdk1.6.0_07classpath

.;%Java_Home%\lib\dt.jar; %Java_Home%\lib\tools.jarPath %Java_Home%\bin

1.1.1開發(fā)環(huán)境安裝選擇任務(wù)欄【開始】→【運(yùn)行】,輸入“cmd”并回車,進(jìn)入DOS界面。在命令行輸入“java-version”,如果配置成功就會出現(xiàn)Java的版本信息,如圖1.4所示。1.1.1開發(fā)環(huán)境安裝2.安裝Tomcat7Tomcat的運(yùn)行離不開JDK的支持,所以要先安裝JDK,然后才能正確安裝Tomcat。本書采用最新的Tomcat7.0作為承載JavaEE應(yīng)用的Web服務(wù)器,可以在其官方網(wǎng)站/下載,如圖1.5所示為Tomcat的下載發(fā)布頁。1.1.1開發(fā)環(huán)境安裝在安裝完畢后啟動Tomcat,按如圖1.6所示進(jìn)行操作。1.1.1開發(fā)環(huán)境安裝打開瀏覽器,輸入“http://localhost:8080”并回車,若呈現(xiàn)如圖1.7所示的頁面,則表明安裝成功。1.1.1開發(fā)環(huán)境安裝3.安裝MyEclipse10本書用到了MyEclipse的最新穩(wěn)定版本MyEclipse10.0,如圖1.8所示為它的啟動畫面和版本信息框。1.1.1開發(fā)環(huán)境安裝4.安裝MySQL5數(shù)據(jù)庫本書使用的MySQL5安裝版的可執(zhí)行文件是mysql5.5.27_win32_zol.msi,雙擊啟動安裝向?qū)?,每一步都選擇它的默認(rèn)設(shè)置,具體的安裝過程從略。完成之后進(jìn)入命令行,輸入“mysql-uroot-p”并回車,輸入密碼19830925(讀者請輸入自己設(shè)置的密碼),將顯示如圖1.9所示的歡迎屏信息。1.1.1開發(fā)環(huán)境安裝(1)新建、查看數(shù)據(jù)庫。為了創(chuàng)建一個(gè)新的數(shù)據(jù)庫,在“mysql>”提示符后輸入CREATEDATABASE(大小寫均有,余同)語句,此語句指定了數(shù)據(jù)庫名:mysql>CREATEDATABASEbookstore;mysql>createdatabasetest;要查看剛剛新建的數(shù)據(jù)庫,使用SHOWDATABASES語句,執(zhí)行結(jié)果如圖1.10所示。1.1.1開發(fā)環(huán)境安裝(2)在指定數(shù)據(jù)庫中創(chuàng)建表。應(yīng)稍后的實(shí)踐需要,需要在test數(shù)據(jù)庫中創(chuàng)建表,但test并不是當(dāng)前數(shù)據(jù)庫,為了使它成為當(dāng)前數(shù)據(jù)庫,發(fā)布USE語句即可:mysql>USEtest連接數(shù)據(jù)庫使用CREATETABLE語句來完成創(chuàng)建表的工作,其格式如下:CREATETABLEtbl_name(column_specs)這里創(chuàng)建一個(gè)名為user的表,留待后用:createtableuser(idintauto_incrementnotnull,usernamevarchar(10)notnull,passwordvarchar(10)notnull,primarykey(id));1.1.1開發(fā)環(huán)境安裝現(xiàn)在來檢驗(yàn)一下MySQL是否確實(shí)如期創(chuàng)建了user表。在命令行輸入:mysql>showtables;系統(tǒng)顯示數(shù)據(jù)庫中已經(jīng)有了一個(gè)user表,如圖1.11所示,進(jìn)一步輸入:mysql>describeuser;可詳細(xì)查看user表的結(jié)構(gòu)、字段類型等信息。1.1.1開發(fā)環(huán)境安裝(3)向表中加入數(shù)據(jù)記錄。通常用INSERT語句向表中加入記錄,格式如下:INSERTINTOtbl_nameVALUES(value1,value2,…)例如:mysql>INSERTINTOuserVALUES(1,'yu','yu');mysql>INSERTINTOuserVALUES(2,'zhouhejun','19830925');mysql>createdatabasebookstore;mysql>sourcee:/book/bookstore.sql;1.1.1開發(fā)環(huán)境安裝請讀者自己向表user中插入一些數(shù)據(jù)記錄,以備后用。完成后輸入:mysql>select*fromuser;查看表中的記錄,筆者創(chuàng)建的表中的記錄內(nèi)容如圖1.12所示。1.1.2環(huán)境的整合1.配置MyEclipse10所用的JRE啟動MyEclipse10,選擇菜單【W(wǎng)indows】→【Preferences】,出現(xiàn)如圖1.13所示的窗口。1.1.2環(huán)境的整合選擇左邊目錄樹中的Java→InstalledJREs項(xiàng),會發(fā)現(xiàn)MyEclipse10已有默認(rèn)的JRE選項(xiàng)(但本書不用這個(gè)),單擊右邊的【Add…】按鈕,添加1.1.1節(jié)1.安裝的JDK7并命名為jdk7,如圖1.14所示。1.1.2環(huán)境的整合2.集成MyEclipse10與Tomcat7啟動MyEclipse,選擇菜單【W(wǎng)indows】→【Preferences】,單擊左邊目錄樹中的MyEclipse→Servers→Tomcat→Tomcat7.x選項(xiàng),在右面激活Tomcat7.x,設(shè)置Tomcat7的安裝路徑,如圖1.15所示。1.1.2環(huán)境的整合進(jìn)一步展開目錄樹,選擇Tomcat7.x→JDK項(xiàng),將其設(shè)置為前面剛設(shè)置的名為jdk7的InstalledJRE(從下拉列表中選擇),如圖1.16所示。1.1.2環(huán)境的整合在MyEclipse10的工具欄中單擊【Run/Stop/RestartMyEclipseServers】復(fù)合按鈕

右邊的下拉箭頭,選擇菜單【Tomcat7.x】→【Start】,如圖1.17所示。1.1.2環(huán)境的整合在MyEclipse10主界面下方控制臺區(qū)會輸出Tomcat的啟動信息,如圖1.18所示,說明服務(wù)器已經(jīng)開啟了。1.1.2環(huán)境的整合3.在MyEclipse10中創(chuàng)建數(shù)據(jù)庫連接啟動MyEclipse10,選擇菜單【W(wǎng)indow】→【OpenPerspective】→【MyEclipseDatabaseExplorer】,打開MyEclipse10的“數(shù)據(jù)庫瀏覽器”模式,右擊鼠標(biāo),選擇菜單【New…】,出現(xiàn)如圖1.19所示的窗口,在其中編輯數(shù)據(jù)庫連接驅(qū)動。1.1.2環(huán)境的整合編輯完成以后,在DBBrowser中右擊剛才創(chuàng)建的mysql連接,如圖1.20所示,選擇菜單【Openconnection…】,打開這個(gè)連接。1.1.2環(huán)境的整合連接打開之后,可以看到數(shù)據(jù)庫中的表,如圖1.21所示,這就說明MyEclipse10已經(jīng)成功與MySQL5相連了!1.2MyEclipse10操作入門1.2.1IDE環(huán)境介紹在Windows下選擇菜單

→【所有程序】→【MyEclipse】→【MyEclipse10】,啟動MyEclipse10.0環(huán)境。初次啟動會要求選擇一個(gè)工作區(qū)(Workspace),如圖1.22所示。1.2.1IDE環(huán)境介紹單擊【OK】按鈕,進(jìn)入集成開發(fā)工作界面,如圖1.23所示。1.2.1IDE環(huán)境介紹1.界面布局(1)菜單欄。窗體頂部是菜單欄,它包含主菜單(如File)和其所屬的菜單項(xiàng)(如File→New),菜單項(xiàng)下面還可以顯示子菜單,如圖1.24所示。1.2.1IDE環(huán)境介紹(2)工具欄。位于菜單欄下面的是工具欄,如圖1.25所示。(3)透視圖切換器。位于工具欄最右側(cè)的是MyEclipse特有的透視圖切換器,如圖1.26所示,它可以顯示多個(gè)透視圖以供切換。1.2.1IDE環(huán)境介紹(4)視圖。如圖1.27所示為一個(gè)大綱視圖。1.2.1IDE環(huán)境介紹(5)編輯器。這個(gè)編輯器與視圖非常相似,也能最大化和最小化,若打開的是JSP源文件,還會在編輯器的上半部窗口中實(shí)時(shí)顯示出頁面的預(yù)覽效果,如圖1.28所示。1.2.1IDE環(huán)境介紹2.組件化的功能在結(jié)構(gòu)上,MyEclipse10的功能可分為7類:①JavaEE模型。②Web開發(fā)工具。③EJB開發(fā)工具。④應(yīng)用程序服務(wù)器的連接器。⑤JavaEE項(xiàng)目部署服務(wù)。⑥數(shù)據(jù)庫服務(wù)。⑦M(jìn)yEclipse整合幫助。EJB是sun的JavaEE服務(wù)器端組件模型,設(shè)計(jì)目標(biāo)與核心應(yīng)用是部署分布式應(yīng)用程序。憑借java跨平臺的優(yōu)勢,用EJB技術(shù)部署的分布式系統(tǒng)可以不限于特定的平臺。EJB(Enterprise

JavaBean)是J2EE(javaEE)的一部分,定義了一個(gè)用于開發(fā)基于組件的企業(yè)多重應(yīng)用程序的標(biāo)準(zhǔn)。其特點(diǎn)包括網(wǎng)絡(luò)服務(wù)支持和核心開發(fā)工具(SDK)。1.2.1IDE環(huán)境介紹MyEclipse(6.0版之前)原本只是作為Eclipse環(huán)境的一個(gè)插件而存在的,只不過后來隨著它功能的日益強(qiáng)大,逐步取代Eclipse而成為獨(dú)立的JavaEE集成開發(fā)環(huán)境,但在其界面的主菜單里至今仍保留著【MyEclipse】這一菜單,如圖1.29所示。1.2.2一個(gè)簡單的Web程序1.創(chuàng)建WebProject啟動MyEclipse10,選擇菜單【File】→【New】→【W(wǎng)ebProject】,出現(xiàn)如圖1.30所示的【NewWebProject】窗口,填寫“ProjectName”欄(為項(xiàng)目起名)為web_jsp,確?!癈ontextrootURL”一欄的內(nèi)容為/web_jsp(即“/”+項(xiàng)目名的形式)。1.2.2一個(gè)簡單的Web程序2.編寫JSP展開項(xiàng)目的工程目錄樹,右擊WebRoot項(xiàng),從彈出的菜單中選擇【New】→【File】,在如圖1.31所示的窗口中輸入文件名login.jsp。1.2.2一個(gè)簡單的Web程序MyEclipse會自動在項(xiàng)目WebRoot目錄下創(chuàng)建一個(gè)名為login.jsp的JSP文件,工程目錄樹如圖1.32所示。1.2.2一個(gè)簡單的Web程序在編輯器中編寫login.jsp代碼如下:<%@pagelanguage="java"pageEncoding="utf-8"%><html><head><title>登錄頁面</title></head><body><formaction=""method="post">

用戶登錄<br>

姓名:<inputtype="text"name="username"/><br>

密碼:<inputtype="text"name="password"/><br><inputtype="submit"value="登錄"/></form></body></html>1.2.2一個(gè)簡單的Web程序3.部署MyEclipse默認(rèn)的Web項(xiàng)目啟動頁是index.jsp,而這里希望它變?yōu)閘ogin.jsp,這需要修改web.xml文件:<?xmlversion="1.0"encoding="UTF-8"?><web-appversion="3.0"xmlns="/xml/ns/javaee"xmlns:xsi="/2001/XMLSchema-instance"xsi:schemaLocation="/xml/ns/javaee/xml/ns/javaee/web-app_3_0.xsd"><display-name></display-name> <welcome-file-list><welcome-file>login.jsp</welcome-file></welcome-file-list></web-app>1.2.2一個(gè)簡單的Web程序如圖1.33所示,單擊工具欄上的【部署】(DeployMyEclipseJ2EEProjecttoServer…)按鈕,彈出如圖1.34所示的【ProjectDeployments】對話框,將新建的Web項(xiàng)目部署到Tomcat中。1.2.2一個(gè)簡單的Web程序1.2.2一個(gè)簡單的Web程序4.運(yùn)行瀏覽啟動Tomcat7.x,在瀏覽器中輸入http://localhost:8080/web_jsp/并回車,將顯示如圖1.35所示的登錄頁面。1.2.3項(xiàng)目的基本操作1.導(dǎo)出項(xiàng)目右擊項(xiàng)目名web_jsp,選擇菜單【Export…】,在彈出的【Export】窗口中展開目錄樹,選擇【General】→【FileSystem】(表示導(dǎo)出的項(xiàng)目存盤在本地文件系統(tǒng)),如圖1.36所示,單擊【Next】按鈕繼續(xù)。1.2.3項(xiàng)目的基本操作單擊【Browse…】按鈕選擇存盤路徑,如圖1.37所示。1.2.3項(xiàng)目的基本操作2.移除項(xiàng)目右擊項(xiàng)目名web_jsp,選擇菜單【Delete】,彈出【DeleteResources】窗口,如圖1.38所示,單擊【OK】按鈕。1.2.3項(xiàng)目的基本操作3.導(dǎo)入項(xiàng)目下面再將剛剛移除的項(xiàng)目web_jsp重新導(dǎo)入工作區(qū),在MyEclipse主菜單選擇【File】→【Import…】,在【Import】窗口中展開目錄樹,選擇菜單【General】→【ExistingProjectsintoWorkspace】,如圖1.39所示,單擊【Next】按鈕。1.2.3項(xiàng)目的基本操作如圖1.40所示,選擇要導(dǎo)入的項(xiàng)目,這里選剛剛移除的web_jsp,單擊【確定】按鈕。1.2.3項(xiàng)目的基本操作最后單擊【Finish】按鈕將其導(dǎo)入,如圖1.41所示。1.3JavaEE傳統(tǒng)開發(fā)1.3.1Model1模式如圖1.42所示為Model1模式開發(fā)的Web應(yīng)用程序的結(jié)構(gòu)及工作原理。1.3JavaEE傳統(tǒng)開發(fā)Model1Model1是在早期廣泛使用的一個(gè)模型。在Model1體系中,所有的HTTP請求都被直接發(fā)送到JSP文件中,JSP文件獨(dú)自響應(yīng)請求并將處理結(jié)果返回給用戶(所有的數(shù)據(jù)存取是由與JSP文件交互的Bean來實(shí)現(xiàn)的)。對于簡單的應(yīng)用開發(fā)而言,使用Model1是一個(gè)不錯(cuò)的選擇,但是它卻不能滿足復(fù)雜的大型應(yīng)用程序的實(shí)現(xiàn)。這是因?yàn)樵陂_發(fā)一個(gè)大型的應(yīng)用程序時(shí),使用Model1可能會導(dǎo)致JSP頁面內(nèi)被嵌入大量的腳本片段或Java代碼,特別是當(dāng)需要處理的請求量很大時(shí),情況更為嚴(yán)重。對于網(wǎng)頁設(shè)計(jì)人員和維護(hù)人員來說,這簡直就是災(zāi)難,因?yàn)轫?xiàng)目的開發(fā)和管理勢必會因此而變得越來越困難。Model2Model2和Model1有一些不同。在Model2體系中,采用JSP與Servlet結(jié)合的方式來實(shí)現(xiàn)對用戶請求的處理,使用Servlet充當(dāng)控制器,使用JSP生成視圖界面。Servlet的任務(wù)是負(fù)責(zé)管理對請求進(jìn)行處理,以及創(chuàng)建JSP頁面需要使用的Bean和對象,同時(shí)根據(jù)用戶的請求將相應(yīng)的JSP頁面響應(yīng)給客戶端。JSP頁面則是負(fù)責(zé)檢索原先由Servlet創(chuàng)建的對象或Bean,從Servlet中提取動態(tài)內(nèi)容插入靜態(tài)模板,它不負(fù)責(zé)處理業(yè)務(wù)邏輯。Model2的優(yōu)點(diǎn)就是它清晰地分離了表達(dá)和內(nèi)容,明確了角色的定義,以及開發(fā)者與網(wǎng)頁設(shè)計(jì)者的分工。1.3.2入門實(shí)踐一:JSP+JDBC實(shí)現(xiàn)登錄1.創(chuàng)建JavaBean創(chuàng)建之前先要建一個(gè)包用于存放JavaBean類。右擊項(xiàng)目src文件夾,選擇菜單【New】→【Package】,如圖1.43所示,在【NewJavaPackage】窗口中輸入包名“org.easybooks.bookstore.jdbc”,單擊【Finish】按鈕。1.3.2入門實(shí)踐一:JSP+JDBC實(shí)現(xiàn)登錄右擊src,選擇菜單【New】→【Class】,出現(xiàn)如圖1.44所示的【NewJavaClass】窗口。MySQLConnBean.java代碼所示。ResultSet.TYPE_SCROLL_SENSITIVE:該常數(shù)的作用是指定數(shù)據(jù)庫游標(biāo)可以在記錄集中前后移動,并且當(dāng)數(shù)據(jù)庫用戶獲取的記錄集對其他用戶的操作敏感,就是說,當(dāng)前用戶正在瀏覽記錄集中,但是其他用戶的操作使數(shù)據(jù)庫中的數(shù)據(jù)發(fā)生了變化,當(dāng)前用戶所獲取的記錄集中的數(shù)據(jù)也會同步發(fā)生變化,這樣有可能會導(dǎo)致非常嚴(yán)重的錯(cuò)誤發(fā)生,建議慎重使用該常數(shù)。ResultSet.CONCUR_UPDATABLE:該常數(shù)的作用是指定當(dāng)前記錄集的協(xié)作方式(concurrency

mode)為可能更新,一旦使用了這個(gè)常數(shù),那么用戶就可以使用updateXXX()等方法更新記錄集中的數(shù)據(jù)。1.3.2入門實(shí)踐一:JSP+JDBC實(shí)現(xiàn)登錄2.創(chuàng)建JSP文件本例要在項(xiàng)目WebRoot目錄下一共創(chuàng)建4個(gè)JSP文件,它們分別承擔(dān)不同的職能。(1)login.jsp代碼:<%@pagelanguage="java"pageEncoding="utf-8"%><html><head><title>登錄頁面</title></head><body><formaction="validate.jsp"method="post">

用戶登錄<br>

姓名:<inputtype="text"name="username"/><br>

密碼:<inputtype="text"name="password"/><br><inputtype="submit"value="登錄"/></form></body></html>1.3.2入門實(shí)踐一:JSP+JDBC實(shí)現(xiàn)登錄(2)validate.jsp代碼所示。(3)welcome.jsp代碼:<%@pagelanguage="java"pageEncoding="gb2312"%><html><head><title>成功頁面</title></head><body><%out.print(request.getParameter("username"));%>,您好!歡迎光臨叮當(dāng)書店。</body></html>CompareTo這是字符串比較的函數(shù),用法:它有三個(gè)返回值~:

當(dāng)s1>s2時(shí),s1.CompareTo(s2)==1

當(dāng)s1=s2時(shí),s1.CompareTo(s2)==0

當(dāng)s1<s2時(shí),s1.CompareTo(s2)==-1

1.3.2入門實(shí)踐一:JSP+JDBC實(shí)現(xiàn)登錄(4)error.jsp代碼:<%@pagelanguage="java"pageEncoding="gb2312"%><html><head><title>失敗頁面</title></head><body>

登錄失??!</body></html>1.3.2入門實(shí)踐一:JSP+JDBC實(shí)現(xiàn)登錄3.添加JDBC驅(qū)動包在項(xiàng)目的工程目錄視圖中刷新(快捷菜單→【Refresh】),最后的目錄樹如圖1.45所示。1.3.2入門實(shí)踐一:JSP+JDBC實(shí)現(xiàn)登錄4.部署運(yùn)行修改web.xml文件,改變項(xiàng)目啟動頁為login.jsp,部署、啟動Tomcat服務(wù)器。在瀏覽器中輸入http://localhost:8080/jsp_jdbc/并回車,出現(xiàn)如圖1.46所示的登錄首頁,輸入姓名、密碼。1.3.2入門實(shí)踐一:JSP+JDBC實(shí)現(xiàn)登錄單擊【登錄】按鈕提交表單,跳轉(zhuǎn)到如圖1.47所示的成功頁面。1.3.2入門實(shí)踐一:JSP+JDBC實(shí)現(xiàn)登錄當(dāng)然,也可以嘗試在圖1.46的頁面上輸入錯(cuò)誤的密碼,或者輸入一個(gè)數(shù)據(jù)庫user表中不存在的用戶名和密碼,提交后就會跳轉(zhuǎn)到如圖1.48所示的失敗頁面。1.3.3JavaEE程序的調(diào)試1.設(shè)置斷點(diǎn)在源代碼語句左側(cè)的隔條上雙擊鼠標(biāo),可以在當(dāng)前行設(shè)置斷點(diǎn)。這里將斷點(diǎn)設(shè)置在validate.jsp源文件中,如圖1.49所示。1.3.3JavaEE程序的調(diào)試2.進(jìn)入調(diào)試透視圖部署運(yùn)行程序,如前圖1.46所示那樣在登錄首頁輸入姓名、密碼后單擊【登錄】按鈕提交表單,此時(shí)系統(tǒng)會自動切換到如圖1.50所示的調(diào)試透視圖界面。1.3.3JavaEE程序的調(diào)試3.變量查看右上部的Variables視圖顯示了此刻程序中各個(gè)變量的取值,如圖1.51所示。從圖1.51可見usr、pwd、validated和sql已經(jīng)有了值,那是因?yàn)閯倓倛?zhí)行了如下語句:Stringusr=request.getParameter("username"); //獲取提交的姓名Stringpwd=request.getParameter("password"); //獲取提交的密碼booleanvalidated=false; //驗(yàn)證成功標(biāo)識//查詢user表中的記錄Stringsql="select*fromuser";1.3.3JavaEE程序的調(diào)試4.變量跟蹤接下來,從斷點(diǎn)處往下一步一步(單步)執(zhí)行程序,同時(shí)跟蹤各變量的動態(tài)變化,如圖1.52所示。1.3.3JavaEE程序的調(diào)試單擊第一下,執(zhí)行語句:MySqlBean.OpenConn(); //調(diào)用MySqlBean中加載JDBC驅(qū)動的方法數(shù)據(jù)庫連接建立,conn首先取得值,如圖1.53所示。1.3.

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論