Struts2框架技術(shù)入門_第1頁
Struts2框架技術(shù)入門_第2頁
Struts2框架技術(shù)入門_第3頁
Struts2框架技術(shù)入門_第4頁
Struts2框架技術(shù)入門_第5頁
已閱讀5頁,還剩68頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1Web框架技術(shù)〔Struts2+Hibernate+Spring3〕

2本課程目錄第1章Struts2框架技術(shù)入門第2章Struts2核心組件詳解第3章Struts2的高級(jí)組件第4章基于Struts2的個(gè)人信息管理系統(tǒng)工程實(shí)訓(xùn)第5章Hibernate框架技術(shù)入門第6章Hibernate核心組件詳解第7章Hibernate高級(jí)組件第8章基于Struts2+Hibernate的工程實(shí)訓(xùn)第9章Spring3框架技術(shù)入門第10章Spring3的AOP框架第11章基于SSH的BBS工程實(shí)訓(xùn)3第1章Struts2框架技術(shù)入門1.1Struts2根底知識(shí)1.2Struts2的核心組件1.3基于Struts2的登錄系統(tǒng)實(shí)例41.1Struts2根底知識(shí)1.1.1Struts2的由來與開展1.1.2Struts2軟件包的下載和配置1.1.3MVC設(shè)計(jì)模式1.1.4Struts2的工作原理51.1.1Struts2的由來與開展Struts是整合了當(dāng)前動(dòng)態(tài)網(wǎng)站技術(shù)中Srvlet、JSP、JavaBean、JDBC、XML等相關(guān)開發(fā)技術(shù)根底之上的一種主流Web開發(fā)框架,是一種基于經(jīng)典MVC的框架。采用Struts可以簡化MVC設(shè)計(jì)模式的Web應(yīng)用開發(fā)工作,很好地實(shí)現(xiàn)代碼重用,使開發(fā)人員從繁瑣的工作中解脫出來,來開發(fā)具有強(qiáng)擴(kuò)展性的Web應(yīng)用。Struts2是JavaWeb工程開發(fā)中最經(jīng)典的Web框架技術(shù),受到許多軟件開發(fā)人員喜愛與追捧,是軟件企業(yè)招聘Java軟件人才時(shí)要求必備的技能之一。6Struts是Apache軟件基金會(huì)下Jakarta工程的一局部。從2000年5月開始開發(fā)Struts,到2001年6月發(fā)布Struts1.0版本。有30多個(gè)開發(fā)者參與進(jìn)來,并有數(shù)千人參與到討論組中。到2002年,Struts小組共有9個(gè)志愿團(tuán)隊(duì)。Struts框架的主要架構(gòu)設(shè)計(jì)和開發(fā)者是CraigR.McClanahan。Craig也是Tomcat4的主要架構(gòu)師。2007年發(fā)布Struts2.0,與Struts1的體系結(jié)構(gòu)的差異巨大。Struts2以WebWork為核心,采用攔截器的機(jī)制來處理用戶的請求,,所以這樣的設(shè)計(jì)也使得業(yè)務(wù)邏輯控制器能夠與ServletAPI完全脫離開Struts2可以理解為WebWork的更新產(chǎn)品。71.1Struts2根底知識(shí)1.1.1Struts2的由來與開展1.1.2Struts2軟件包的下載和配置1.1.3MVC設(shè)計(jì)模式1.1.4Struts2的工作原理81.軟件包下載Struts的各版本可在Apache官方網(wǎng)站下載。選擇下載。書上使用的是,2012年8月發(fā)布。9Struts2的下載101112下載Struts2時(shí)有以下選項(xiàng):〔1〕這是Struts2的完整下載包,內(nèi)容包括Struts2的核心類庫、源代碼、文檔、實(shí)例等,建議選擇該選項(xiàng)。〔2〕該包只包含Struts2的實(shí)例,在完整版的Struts2下載包中已經(jīng)包含了該選項(xiàng)中所有實(shí)例。〔3〕該包只包含Struts2的核心類庫,在完整版的Struts2下載包中已經(jīng)包含了該選項(xiàng)中所有類庫?!?〕該包只包含Struts2的相關(guān)文檔,包括使用文檔、參考手冊和API等,在完整版的Struts2下載包中已經(jīng)包含了該選項(xiàng)中所有文檔?!?〕該包只包含Struts2的源代碼,在完整版的Struts2下載包中已經(jīng)包含了該選項(xiàng)中所有源代碼。132.Struts2軟件包中主要文件14〔1〕apps文件夾:該文件夾中存放基于Struts2的實(shí)例應(yīng)用,這些實(shí)例對學(xué)習(xí)者來說是非常有用的資料?!?〕docs文件夾:該文件夾中存放Struts2的相關(guān)文檔,Struts2API、Struts2快速入門等文檔內(nèi)容?!?〕lib文件夾:該文件夾中存放Struts2框架的核心類庫以及Struts2的第三方插件類庫。〔4〕src文件夾:該文件夾中存放Struts2框架的全部源代碼。153.Struts2的配置的lib文件夾中有80多個(gè)JAR文件。大多數(shù)情況下,使用Struts2開發(fā)JavaWeb應(yīng)用程序并不需要使用到Struts2的全部類庫,因此沒有必要把lib文件夾中的類庫全部配置到工程中。一般只需配置、、、、、、等文件。如果需要使用Struts2的更多特性,需要配置更多l(xiāng)ib文件夾中的JAR文件到工程中。16在MyEclipse中配置Struts2在MyEclipse10.6中也已經(jīng)集成了Struts2的插件,直接使用即可。要在MyEclipse10.6中重新配置Struts2,可在創(chuàng)立工程〔如工程ch01〕后,單擊菜單“MyEclipse”->“ProjectCapabilities”->“AddStrutsCapabilities”,如圖1-22所示,會(huì)彈出如圖1-23所示的對話框,選擇Struts2.1后彈出另外一個(gè)對話框,在該對話框中單擊“Next”,彈出如圖1-24所示對話框,在其中可以選擇Struts2類庫,完成選擇后單擊“翻開”,Struts2類庫在MyEclipse工程中的配置即完成。配置完成后,在工程ch01中將自動(dòng)添加一個(gè)Struts2的包,即Struts2CoreLibraries。如需使用Struts2的其它版本,可以導(dǎo)入到該包。171819201.1Struts2根底知識(shí)1.1.1Struts2的由來與開展1.1.2Struts2軟件包的下載和配置1.1.3MVC設(shè)計(jì)模式1.1.4Struts2的工作原理21MVC,如圖1-25所示,是一種目前廣泛流行的軟件設(shè)計(jì)模式,早在70年代,IBM就進(jìn)行了MVC設(shè)計(jì)模式的研究。近來,隨著JavaEE的成熟,它成為在JavaEE平臺(tái)上推薦的一種設(shè)計(jì)模型,是廣闊Java開發(fā)者非常感興趣的設(shè)計(jì)模型。隨著網(wǎng)絡(luò)應(yīng)用的快速增加,MVC模式對于Web應(yīng)用的開發(fā)無疑是一種非常先進(jìn)的設(shè)計(jì)思想,無論選擇哪種語言,無論應(yīng)用多復(fù)雜,它都能為理解分析應(yīng)用模型提供最根本的分析方法,為構(gòu)造產(chǎn)品提供清晰的設(shè)計(jì)框架,為軟件工程提供標(biāo)準(zhǔn)的依據(jù)。22MVC模式圖模型視圖控制器狀態(tài)查詢通知改變狀態(tài)改變視圖選擇用戶請求方法調(diào)用事件MVC設(shè)計(jì)模式概覽實(shí)現(xiàn)MVC(Model、View、Controller)模式的應(yīng)用程序由3大局部構(gòu)成:模型:封裝應(yīng)用程序的數(shù)據(jù)和業(yè)務(wù)邏輯視圖:實(shí)現(xiàn)應(yīng)用程序的信息顯示功能控制器:接收來自用戶的輸入,調(diào)用模型層,響應(yīng)對應(yīng)的視圖組件POJO(PlainOldJavaObject)JSPServletFilter使用Filter作為控制器的MVC使用Filter作為控制器的好處使用一個(gè)過濾器來作為控制器,可以方便地在應(yīng)用程序里對所有資源(包括靜態(tài)資源)進(jìn)行控制訪問.<url-pattern>*.action</url-pattern>Servlet能做的Filter是否都可以完成?嗯。Filter能做的Servlet都可以完成嗎?攔截資源卻不是Servlet所擅長的!Filter中有一個(gè)FilterChain,這個(gè)API在Servlet中沒有!ServletVSFilter251.1Struts2根底知識(shí)1.1.1Struts2的由來與開展1.1.2Struts2軟件包的下載和配置1.1.3MVC設(shè)計(jì)模式1.1.4Struts2的工作原理26調(diào)用指定某個(gè)Action返回處理結(jié)果HTTP視圖(JSP)控制器FilterDispatcher攔截器1攔截器2攔截器3Action模型JavaBeansstruts.xml獲取配置信息27Struts2中使用攔截器來處理用戶請求,從而允許用戶的業(yè)務(wù)控制器Action與Servlet別離。Struts2的工作原理如圖1-26所示,用戶請求提交后經(jīng)過多個(gè)攔截器攔截后交給核心控制器FilterDispatcher處理,核心控制器讀取配置文件struts.xml,根據(jù)配置文件的信息指定某一個(gè)業(yè)務(wù)控制器Action〔POJO類〕來處理用戶數(shù)據(jù),業(yè)務(wù)控制器調(diào)用某個(gè)業(yè)務(wù)組件進(jìn)行處理,在處理的過程中可以調(diào)用其他模型組件共同完成數(shù)據(jù)的處理。Action處理完后會(huì)返回給核心控制器FilterDispatcher一個(gè)處理結(jié)果,核心控制器根據(jù)返回的處理結(jié)果讀取配置文件struts.xml,根據(jù)配置文件中的配置,決定下一步跳轉(zhuǎn)到哪一個(gè)頁面。28一個(gè)客戶請求在Struts2框架中處理的過程大概有以下幾個(gè)步驟:客戶提交請求到效勞器;請求被提交到一系列的過濾器過濾后最后到FilterDispatcher;FilterDispatcher是核心控制器,是基于Struts2中MVC模式的控制器局部;FilterDispatcher讀取配置文件struts.xml,根據(jù)配置信息調(diào)用某個(gè)Action來處理客戶請求;Action執(zhí)行完畢,返回執(zhí)行結(jié)果,根據(jù)struts.xml的配置找到對應(yīng)的返回結(jié)果。29第1章Struts2框架技術(shù)入門1.1Struts2根底知識(shí)1.2Struts2的核心組件1.3基于Struts2的登錄系統(tǒng)實(shí)例301.2Struts2的核心組件1.2.1Struts2的控制器組件1.2.2Struts2的模型組件1.2.3Struts2的視圖組件31Struts2是基于MVC模式的Web框架,Struts2框架按照MVC的思想主要有,控制器層,包括核心控制器FilterDispatcher、業(yè)務(wù)控制器Action;模型層,包括業(yè)務(wù)邏輯組件和數(shù)據(jù)庫訪問組件;視圖組件。321.2.1Struts2的控制器組件在基于MVC的應(yīng)用程序開發(fā)中控制器組件的主要功能是,從客戶端接受數(shù)據(jù)、調(diào)用模型〔JavaBean〕、進(jìn)行數(shù)據(jù)處理以及決定返回給客戶某個(gè)視圖。Struts2的控制器主要有:核心控制器FilterDispatcher和業(yè)務(wù)控制器Action。331.FilterDispatcher控制器FilterDispatcher是一個(gè)過濾器,是Struts2的核心控制器,控制著整個(gè)Web工程中數(shù)據(jù)的流向和操作。與Web應(yīng)用程序整合的MVC框架需要web.xml配置文件。基于MVC的Web框架需要在Web應(yīng)用程序中加載一個(gè)核心控制器,Struts2框架需要加載FilterDispatcher,需在web.xml中進(jìn)行配置。除了web.xml配置文件配置核心控制器FilterDispatcher外,Struts2控制數(shù)據(jù)的操作時(shí),還需要Struts2本身的配置文件struts.xml。342.struts.xml配置文件在Struts2中核心的配置文件是struts.xml,用戶請求提交給核心控制器FilterDispatcher后,具體由那個(gè)業(yè)務(wù)控制器Action來完成,是struts.xml配置文件中配置的,根據(jù)配置文件struts.xml中的數(shù)據(jù),核心控制器FilterDispatcher調(diào)用某個(gè)業(yè)務(wù)控制器Action來完成數(shù)據(jù)的處理,處理完數(shù)據(jù)后把處理結(jié)果通過其他對象返回給核心控制器FilterDispatcher,核心控制器根據(jù)struts.xml配置文件的數(shù)據(jù),決定下一步的操作。所以Struts2中struts.xml是核心配置文件,在控制器操作中起到關(guān)鍵作用。353.Action控制器Action是Struts2的業(yè)務(wù)控制器,可以不實(shí)現(xiàn)任何接口或者繼承Struts2類,該Action類是一個(gè)根本的Java類,具有很高的可重用性。Action中不實(shí)現(xiàn)任何業(yè)務(wù)邏輯,只負(fù)責(zé)組織調(diào)度業(yè)務(wù)模型組件。Struts2的Action類具有很多優(yōu)勢:Action類完全是一個(gè)POJO〔PlainOldJavaObjects〕簡單的Java對象,實(shí)際就是普通JavaBean,是為了防止和EJB混淆所創(chuàng)造的簡稱,Action具有良好的代碼重用性。Action類無需與Servlet關(guān)聯(lián),降低了與Servlet的耦合度,所以應(yīng)用和測試比較簡單。Action類的execute()方法僅返回一個(gè)字符串作為處理結(jié)果,該處理結(jié)果可傳到任何視圖或者另外一個(gè)Action。361.2Struts2的核心組件1.2.1Struts2的控制器組件1.2.2Struts2的模型組件1.2.3Struts2的視圖組件371.2.2Struts2的模型組件模型組件可以是實(shí)現(xiàn)業(yè)務(wù)邏輯的模塊,可以是JavaBean、POJO、EJB,在實(shí)際的開發(fā)中,對模型組件的區(qū)別和定義也是比較模糊的,實(shí)際上也超出了Struts2框架的范圍。Struts2框架的業(yè)務(wù)控制器不會(huì)對用戶請求進(jìn)行實(shí)質(zhì)的處理,用戶請求最終由模型組件負(fù)責(zé)處理,業(yè)務(wù)控制器只是提供處理場合,是負(fù)責(zé)調(diào)度的調(diào)度器。38不同的開發(fā)者有自己的方式來實(shí)現(xiàn)模型組件,Struts2框架的目的是使用Action來調(diào)用模型組件。例如一個(gè)銀行存款的模型組件,代碼如【例1-1】所示。39【例1-1】Bank模型組件〔Bank.java〕40【例1-1】中的代碼是一個(gè)完成某一功能的業(yè)務(wù)邏輯模塊,在執(zhí)行saving(Stringaccounts,Stringmoney)方法時(shí)能夠通過調(diào)用其他類或者直接訪問數(shù)據(jù)庫完成存款功能。使用業(yè)務(wù)控制器Action可以調(diào)用該業(yè)務(wù)邏輯組件在Action的execute()中實(shí)現(xiàn),代碼如【例1-2】所示?!纠?-2】BankSavingAction業(yè)務(wù)控制器〔BankSavingAction.java〕411.2Struts2的核心組件1.2.1Struts2的控制器組件1.2.2Struts2的模型組件1.2.3Struts2的視圖組件421.2.3Struts2的視圖組件Struts1視圖組件的構(gòu)成主要有:HTML、JSP和Struts1標(biāo)簽,Struts2視圖組件除了有HTML、JSP、Struts2標(biāo)簽外,還有模板技術(shù)作為視圖技術(shù),如FreeMarker、Velocity等視圖技術(shù)。431.HTML和JSPHTML和JSP是開發(fā)基于Struts2視圖組件的主要技術(shù)。442.Struts2標(biāo)簽Struts2框架提供了功能強(qiáng)大的標(biāo)簽庫,使用Struts2標(biāo)簽庫開發(fā)視圖,可以使頁面更整潔,簡化頁面輸出,支持更加復(fù)雜而豐富的功能且頁面易維護(hù),減少代碼量和開發(fā)時(shí)間。453.FreemakerFreemaker是一個(gè)“模板引擎”,是一個(gè)基于模板技術(shù)的生成文本輸出的一個(gè)通用工具。它是一個(gè)Java的包,使用純Java編寫,是Java程序員可以使用的類庫。本身并不是一個(gè)對最終用戶的應(yīng)用程序。但是,程序員可以把它應(yīng)用到他們的產(chǎn)品中。FreeMarker是設(shè)計(jì)為可以生成Web頁面〔JSP〕。它是基于Servlet遵循MVC模式的應(yīng)用,MVC模式能夠使網(wǎng)頁設(shè)計(jì)人員和程序員的耦合減少。每個(gè)人都可以做他們擅長的工作,網(wǎng)頁設(shè)計(jì)人員可以改變網(wǎng)頁的面貌,而并不需要程序員的重新編譯,因?yàn)闃I(yè)務(wù)邏輯和頁面的設(shè)計(jì)已經(jīng)被別離開了。模板是不能由復(fù)雜的程序片斷組成的,即便網(wǎng)頁設(shè)計(jì)人員和程序員是一個(gè)人,別離是有必要的,它能使程序更加的靈活和清晰。雖然Freemarker能編程,但是它并不是一個(gè)編程語言,它是為程序顯示數(shù)據(jù)而準(zhǔn)備的。Freemarker僅僅是利用模板加上數(shù)據(jù)生成文本頁面。能用來生成任意格式的文本,如HTML,XML,Java源碼等等。Freemarker并不是一個(gè)Web應(yīng)用程序框架,可以說是一個(gè)Web應(yīng)用框架的一個(gè)視圖組件。Freemarker下載地址為:。464.VelocityVelocity是一個(gè)開放源嗎的“模版引擎”,由小組負(fù)責(zé)開發(fā),現(xiàn)在最新的版本是Velocity1.7,可以到其官方網(wǎng)站上可以了解Velocity的最新信息。Velocity是一個(gè)基于Java的模版引擎。它允許Web頁面設(shè)計(jì)者引用Java代碼預(yù)定義的方法。Web設(shè)計(jì)者可以根據(jù)MVC模式和Java程序員并行工作,這意味著Web設(shè)計(jì)者可以單獨(dú)專注于設(shè)計(jì)良好的站點(diǎn),而程序員那么可單獨(dú)專注于編寫底層代碼。Velocity將Java代碼從Web頁面中別離出來,使站點(diǎn)在長時(shí)間運(yùn)行后仍然具有很好的可維護(hù)性,并提供了一個(gè)除JSP和PHP之外的可行的被選方案。Velocity可用來從模板產(chǎn)生Web頁面,SQL以及其他輸出。它也可用于一個(gè)獨(dú)立的程序以產(chǎn)生源代碼和報(bào)告,或者作為其他系統(tǒng)的一個(gè)集成組件。這個(gè)工程完成后,Velocity將為應(yīng)用程序框架提供模板效勞。Velocity的模板語言非常簡單,它并沒有復(fù)雜的數(shù)據(jù)類型和語法結(jié)構(gòu),即使沒有編程經(jīng)驗(yàn)的讀者也可以輕松地掌握。47第1章Struts2框架技術(shù)入門1.1Struts2根底知識(shí)1.2Struts2的核心組件1.3基于Struts2的登錄系統(tǒng)實(shí)例481.3基于Struts2的登錄系統(tǒng)實(shí)例1.3.1使用NetBeans7開發(fā)工程1.3.2使用MyEclipse10開發(fā)工程1.3.3使用Eclipse開發(fā)工程49本節(jié)通過使用NetBeans7、MyEclipse9和Eclipse來開發(fā)簡單的登錄系統(tǒng),從而掌握如何使用它們開發(fā)基于Struts2的Web工程。使用基于Struts2開發(fā)主要經(jīng)過以下步驟:〔1〕在web.xml中配置核心控制器FilterDispatcher;〔2〕設(shè)計(jì)和編寫視圖組件,如使用JSP編寫頁面;〔3〕編寫視圖組件對應(yīng)的業(yè)務(wù)控制器組件Action;〔4〕配置業(yè)務(wù)控制器Action,即修改struts.xml配置文件,配置Action;〔5〕在struts.xml配置文件文件中配置處理結(jié)果與對應(yīng)視圖跳轉(zhuǎn)關(guān)系。Action調(diào)用模型組件〔業(yè)務(wù)邏輯組件〕處理后返回處理結(jié)果,根據(jù)處理結(jié)果進(jìn)行下一步頁面跳轉(zhuǎn)。頁面的下一怎么調(diào)轉(zhuǎn)都是事先在struts.xml配置文件中配置好的。501.3.1使用NetBeans7開發(fā)工程1.工程介紹該工程為登錄系統(tǒng),工程有一個(gè)登錄頁面〔login.jsp〕,代碼如【例1-4】所示;登錄頁面對應(yīng)的業(yè)務(wù)邏輯組件LoginBean類代碼如【例1-6】,對應(yīng)的業(yè)務(wù)控制器LoginAction類,代碼如【例1-7】所示;如果登錄成功〔用戶名、密碼正確〕跳轉(zhuǎn)到success.jsp頁面,代碼如【例1-5】所示;如果登錄失敗〔用戶名、密碼不正確〕那么重新回到登錄頁面〔login.jsp〕。此外還需要配置web.xml,代碼如【例1-3】所示;配置struts.xml文件的代碼如【例1-8】所示。工程的文件結(jié)構(gòu)如圖1-27所示。51522.在web.xml中配置核心控制器FilterDispatcher在使用NetBeans7.2開發(fā)基于Struts2的Web工程時(shí),如果新建工程時(shí)在如圖1-14所示步驟中選擇了“Struts2”,那么在新建工程的“WEB-INF”文件夾下,NetBeans7.2會(huì)自動(dòng)創(chuàng)立一個(gè)web.xml,所以使用NetBeans7.2中的Struts2插件時(shí),web.xml中的核心控制器FilterDispatcher是自動(dòng)配置好的。web.xml的代碼如【例1-3】所示。如果沒有使用該插件新建工程,需要程序員自己配置web.xml,代碼如【例1-3】所示。53【例1-3】在web.xml中配置核心控制器〔web.xml〕<?xmlversion="1.0"encoding="UTF-8"?><web-appversion="3.0"xmlns="://java.sun/xml/ns/javaee"xmlns:xsi=":///2001/XMLSchema-instance"://java.sun/xml/ns/javaee/web-app_3_0.xsd"><filter><!--配置Struts2核心控制器的名稱--><filter-name>struts2</filter-name> <!--配置Struts2核心控制器的類--><filter-class>org.apache.struts2.dispatcher.FilterDispatcher</filter-class></filter><filter-mapping> <!--Struts2控制器的名稱--><filter-name>struts2</filter-name> <!--攔截所有URL請求--><url-pattern>/*</url-pattern></filter-mapping>54 <!--指定默認(rèn)的會(huì)話超時(shí)時(shí)間間隔,以分鐘為單位--><session-config><session-timeout>30</session-timeout></session-config> <!--配置默認(rèn)的訪問界面--><welcome-file-list><welcome-file>example/HelloWorld.jsp</welcome-file></welcome-file-list></web-app>553.編寫視圖組件〔JSP頁面〕編寫一個(gè)如圖1-28所示的登錄頁面。56【例1-4】登錄頁面〔login.jsp〕<%@pagecontentType="text/html"pageEncoding="UTF-8"%><html><head><meta-equiv="Content-Type"content="text/html;charset=UTF-8"><title>基于Struts2的登錄系統(tǒng)應(yīng)用</title></head><body><formmethod="post"action="login">用戶名:<inputname="userName"type="text"size="24"><br>密碼:<inputname="password"type="password"size="26"><br><inputtype="submit"value="登錄"></form><hr></body></html>57【例1-5】登錄成功頁面〔success.jsp〕<%@pagecontentType="text/html"pageEncoding="UTF-8"%><html><head><meta-equiv="Content-Type"content="text/html;charset=UTF-8"><title>登錄成功頁面</title></head><body><h1>你登錄成功,歡送你!</h1></body></html>584.編寫登錄頁面對應(yīng)的業(yè)務(wù)邏輯組件JavaBean登錄頁面使用的業(yè)務(wù)邏輯組件LoginBean類,代碼如【例1-6】?!纠?-6】登錄頁面的業(yè)務(wù)邏輯組件〔LoginBean.java〕packageloginBean;publicclassLoginBean{privateStringuserName;privateStringpassWord;publicStringgetUserName(){returnuserName;}publicvoidsetUserName(StringuserName){this.userName=userName;}publicStringgetPassWord(){returnpassWord;}publicvoidsetPassWord(StringpassWord){this.passWord=passWord;}59//處理用戶登錄的方法

publicbooleanlogin(StringuserName,StringpassWord){booleanb=false;if(userName.equals("QQ")&&passWord.equals("123")){b=true;returnb; } else{b=false;returnb; }}}605.編寫業(yè)務(wù)控制器Action為了處理視圖的業(yè)務(wù)邏輯,一般每個(gè)視圖都會(huì)對應(yīng)一個(gè)業(yè)務(wù)控制器Action。login.jsp對應(yīng)的業(yè)務(wù)控制器如【例1-7】所示的LoginAction類,該類就是一個(gè)普通的Java類。【例1-7】登錄頁面〔login.jsp〕對應(yīng)的業(yè)務(wù)控制器〔LoginAction.java〕packageloginAction;importloginBean.LoginBean;publicclassLoginAction{privateStringuserName;privateStringpassWord;publicStringgetUserName(){returnuserName;}publicvoidsetUserName(StringuserName){this.userName=userName;}61publicStringgetPassWord(){returnpassWord;}publicvoidsetPassWord(StringpassWord){this.passWord=passWord;}

publicStringexecute()throwsException{LoginBeanlb=newLoginBean();if(lb.login(userName,passWord)) {return"success"; } else{return"error"

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論