freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于mvc設(shè)計(jì)模式的javaweb應(yīng)用對網(wǎng)上購書系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)畢業(yè)論文(參考版)

2025-06-30 18:46本頁面
  

【正文】   ,這就給更改數(shù)據(jù)源帶來了很大的麻煩。API是面向?qū)ο蟮?,可以讓用戶把常用的方法封裝為一個類,備后用。   。   ,可以致力于應(yīng)用程序中的關(guān)鍵地方。   優(yōu)點(diǎn)如下:   這使得人們在建立客戶/服務(wù)器應(yīng)用程序時,通常把Java作為編程語言,把任何一種瀏覽器作為應(yīng)用程序的友好界面,把Internet或Intranet作為網(wǎng)絡(luò)主干,把有關(guān)的數(shù)據(jù)庫作為數(shù)據(jù)庫后端。 JDBC的優(yōu)點(diǎn)和缺點(diǎn)JDBC   每個JDBC應(yīng)用程序(或小程序)至少要有一個JDBC驅(qū)動程序,每個驅(qū)動程序是針對一種DBMS的。   一般來說,JDBCJavaSoft提供了將JDBC變成ODBC的JDBCODBC橋。   JDBC不是Mincrosoft的ODBC(開放式數(shù)據(jù)庫連接)規(guī)范派生的,JDBC完全是用Java編寫的,而ODBC是個C接口。SQL也可能不是,或者根本不是AQL。AQL2項(xiàng)目層,但JDBC允許開發(fā)者直接將查詢字符串傳遞到連接的驅(qū)動程序。   除了向開發(fā)者提供統(tǒng)一的獨(dú)立于DBMS的框架外,JDBC還提供了讓開發(fā)者保持?jǐn)?shù)據(jù)庫廠家提供的特定功能的辦法。應(yīng)用程序不變,驅(qū)動程序則各不相同。驅(qū)動程序負(fù)責(zé)標(biāo)準(zhǔn)JDBC調(diào)用向支持的數(shù)據(jù)庫所要的具體調(diào)用轉(zhuǎn)變。這個API提供了編寫的標(biāo)準(zhǔn)和考慮所有不同應(yīng)用程序設(shè)計(jì)的標(biāo)準(zhǔn)。2的一部分。產(chǎn)生的JDBC從外部看,第三方軟件開發(fā)者通過專用辦法,通過本地方法集成客戶機(jī)方庫或通過建立第三層和新協(xié)議來滿足這種需求。盡管ANSI委員會有個標(biāo)準(zhǔn)組,但每個數(shù)據(jù)庫系統(tǒng)廠家的系統(tǒng)連接和通訊方法仍然五花八門。APIJDBC 處理其它的Statement 關(guān)閉連接接口。 查看返回的行數(shù)是否超出范圍。 限制Statement中的參數(shù)。 用JDBC來實(shí)現(xiàn)訪問數(shù)據(jù)庫記錄可以采用下面的幾個步驟: 通過驅(qū)動器管理器獲取連接接口。它為Java程序提供了一個統(tǒng)一縫地操作各種數(shù)據(jù)庫的接口,程序員編程時,可以不關(guān)心它所要操作的數(shù)據(jù)庫是哪個廠家的產(chǎn)品,從而提高了軟件的通用性,而且在Internet上確實(shí)無法預(yù)料你的用戶想訪問什么類型的數(shù)據(jù)庫。API是一個標(biāo)準(zhǔn)統(tǒng)一的SQL數(shù)據(jù)存取接口。   JavaSoft公司開發(fā)了JDBC   JDBC有一個非常獨(dú)特的動態(tài)連接結(jié)構(gòu),它使得系統(tǒng)模塊化。SQL標(biāo)準(zhǔn)雖然也還處在不斷變革之中(任何一門標(biāo)準(zhǔn)如果已一成不變了,那只能說明這門學(xué)科已經(jīng)停止發(fā)展了),但其基本內(nèi)容相對穩(wěn)定。Language:結(jié)構(gòu)化查詢語言),它是一種標(biāo)準(zhǔn)化的關(guān)系型數(shù)據(jù)庫訪問語言。 JDBC的工作機(jī)制 如果用戶是從事軟件領(lǐng)域工作的,不可能沒有聽說過SQL(StructureBaseJDBC在Web和Internet應(yīng)用程序中的作用和ODBC在Windows系列平臺應(yīng)用程序中的作用類似。Base JDBC技術(shù)JDBC是Java的開發(fā)者——Sun的Javasoft公司制定的Java數(shù)據(jù)庫連接(Java例如,一個Servlet環(huán)境是屬于bank應(yīng)用的,它將被映射到/bank目錄下。一個Servlet環(huán)境不能在虛擬主機(jī)之間共享。一個Servlet只能運(yùn)行在一個Servlet環(huán)境中,但是不同的Servlet可以在Servlet引擎上有不同的視圖。 Servlet環(huán)境ServletContext接口定義了一個Servlet環(huán)境對象,這個對象定義了一個在Servlet引擎上的Servlet的視圖。例如,如果你建立了一個名叫l(wèi)istattributes的Servlet,你可以通過使用/servlet/listattributes來訪問這個Servlet。映射一個Servlet到所有以一個特定的字段結(jié)尾的所有URL例如。映射一個Servlet到以一個指定的目錄名開始的所有URL例如,你可以映射一個Servlet到/catalog,這樣來自/catalog/、 /catalog/garden和/catalog/housewares/。這份說明文檔不規(guī)定映射如何發(fā)生。引擎必須釋放Servlet并完成無用存儲單元的收集。 在卸載一個Servlet之前,Servlet引擎必須等待所有的service()方法完成或超時結(jié)束(Servlet引擎會對超時作出定義)。當(dāng)Servlet引擎決定卸載一個Servlet時(例如,如果這個引擎被關(guān)閉或者需要讓資源),這個引擎必須允許Servlet釋放正在使用的資源并存儲有關(guān)資料。Servlet引擎可以自由的在任何時候使用或清除一個Servlet。作為一個Servlet的開發(fā)者,你不能假定一個Servlet只有一個實(shí)例。一個映射對包括一個Servlet實(shí)例以及一個Servlet返回?cái)?shù)據(jù)的URL,例如:HelloServlet with /hello/。例外的情況是這個Servlet執(zhí)行了SingleThreadModel接口,如果是那樣的話,Servlet只能同時處理一個請求。這個對象使得Servlet能夠訪問ServletContext對象。init()方法獲得了一個Servlet配置對象(ServletConfig)。在初始化過程中,()方法提供了Servlet的初始化信息。Servlet引擎利用Java類載入工具載入一個Servlet,Servlet引擎可以從一個本地的文件系統(tǒng)、一個遠(yuǎn)程的文件系統(tǒng)以及網(wǎng)絡(luò)載入Servlet。在功能上,Servlet與CGI、NSAPI有點(diǎn)類似,但是,與他們不同的是:Servlet具有平臺無關(guān)性。這個請求被運(yùn)行在Web服務(wù)器上的Servlet引擎處理,并返回響應(yīng)到Servlet。Servlet通過servlet引擎運(yùn)行在Web服務(wù)器中,以執(zhí)行請求和響應(yīng),請求、響應(yīng)的典型范例是HTTP協(xié)議。你可以把Servlet理解成Server上的applets,它被編譯成字節(jié)碼,這樣它就可以被動態(tài)地載入并用效地?cái)U(kuò)展主機(jī)的處理能力。 }同時在完成一次購物后必須把用戶的Session給清空,這樣就不會把本次的消費(fèi)和下一次的消費(fèi)混在一起也避免了服務(wù)器端資源的無故浪費(fèi)。+items[i].getBookNumber()+39。+items[i].getBookIsbn()+39。+items[i].getBookPrice()+39。+items[i].getBookName()+39。特快39。+(telephone)+39。+(address)+39。+(username)+39。 i 。 Book[] items = ()。) )。, 39。, 39。, 39。, 39。, 39。, 39。, 39。 i++){ ( insert into ShoppingInfo (userName, userAddress, userTelephone, transport, bookName, bookPrice, bookIsbn, bookNumber) values (39。 for (int i = 0。 } } else if((transport).equals(express)){ ShoppingCart myShoppingCart = (ShoppingCart)(sessionId)。+items[i].getBookNumber()+39。+items[i].getBookIsbn()+39。+items[i].getBookPrice()+39。+items[i].getBookName()+39。平郵39。+(telephone)+39。+(address)+39。+(username)+39。 i 。Book[] items = ()。如何把用戶的這次購買的相關(guān)信息準(zhǔn)確的反映給工作人員完成后期的配送貨呢?問題的答案就是把相關(guān)的信息作為數(shù)據(jù)庫中ShoppingInfo表的數(shù)據(jù)插入,那么工作人員只要看到數(shù)據(jù)庫中的信息就可以知道需要什么書送到什么地方的哪位客戶那里,并且根據(jù)用戶需要的運(yùn)輸方式及時的完成本次定單讓用戶滿意。圖12 查看購物車內(nèi)信息圖接下去用戶可以繼續(xù)購物,頁面上提供了這樣的按鈕,如果用戶把自己所需要的書已經(jīng)已經(jīng)都放入了購物車想要完成此次購買的那么就需要提供用戶更加具體的信息來完成這次定單。 ((number))。 ((bookname))。 Book book =new Book(null, null, null, null)。 )。ResultSet rs = (select * from CartoonbookInfo where bookisbn=39。為了解決這一問題本系統(tǒng)把書本的相關(guān)信息從數(shù)據(jù)庫中讀出來,那么數(shù)據(jù)維護(hù)人員可以根據(jù)不同時間對于書本信息的改變只要在數(shù)據(jù)庫中完成即可,顯然會方便很多具有可行性。 %如果用戶沒有產(chǎn)生任何的誤操作那么頁面就會跳轉(zhuǎn)到清單列表的Jsp頁面,其中把用戶之前的所有的放入購物車ShoppingCart中的書都羅列出來,并顯示這些書的相關(guān)信息以及用戶應(yīng)付的總價。 if(error != null){ String errorNull = (String)(numberform)。 if( errortimeout != null){ (沒有登陸操作或session已經(jīng)過期)。在顯示組件Jsp中:% HashMap timeout = (HashMap)(timeout)。 (numberformNull,errNull)。 }else{ if((number) == null || (number).length() == 0){ Errors error = new Errors()。就可以了(timeout,errtime)。以下是這些功能實(shí)現(xiàn)的代碼:在Servlet組件中處理:if((userinfo) == null){Errors error = new Errors()。如果用戶在沒有登陸狀態(tài)下實(shí)行購買,系統(tǒng)會停留在原來的頁面上同時給出要求以登陸狀態(tài)購買的信息并且比較友好的出現(xiàn)注冊和登陸的兩個按鈕,這兩個按鈕原先是不存在的,只有用戶在這樣的誤操作狀態(tài)下才會出現(xiàn)。以《Harry Potter Boxed Set》一書作為該系統(tǒng)設(shè)計(jì)和實(shí)現(xiàn)的例子。//把從form表單中讀取到的String類型的數(shù)據(jù)在作小寫處理和忽略前導(dǎo)和后導(dǎo)空格后放入到//searchform這一個變量對象中 if((harry potter boxed set) || (harry potter) || (harry) || (potter)){//注意這里的所有可能出現(xiàn)的組合必須要用小寫形式 (/).forward(request, response)。所以針對以上問題,我做了如下處理:對于大小寫規(guī)范問題:不管用戶提供的查詢信息的大小寫是怎么樣的,我都把所有在文本框中的信息轉(zhuǎn)化成為小寫字母然后再做處理,然后在做判斷中只要把所有可能的關(guān)鍵字組合用全部小寫規(guī)范寫就解決了這一問題。Harry Potter Boxed Set的所有可能的關(guān)鍵字組合本人以為:Harry potter和Harry還有就是Potter,只要在該文本框中輸入這其中的一種可能組合關(guān)鍵字用戶同樣可以查詢到該《Harry Potter Boxed Set》一書進(jìn)行進(jìn)一步的操作。本功能的實(shí)現(xiàn)以《Harry Potter Boxed Set》這一本書做為講解用戶在文本框中輸入Harry Potter Boxed Set這一全名當(dāng)然可以準(zhǔn)確的查到購買此書的網(wǎng)頁,同樣本系統(tǒng)為了防止用戶只知道書名的關(guān)鍵字而不知道全名這一情況給出解決辦法:。搜索39。submit39。searchform39。center39。2539。45039。text39。://localhost:8080/Thesis/servlet/Main39。get39??ㄍ?a這樣就完成了對于卡通這一類書的超級連接,只要在://localhost:8080/Thesis/首先本系統(tǒng)提供給用戶以精確和模糊查詢功能。圖8 分類選擇圖書圖超級連接的實(shí)現(xiàn):a href=39。本系統(tǒng)假設(shè)了四類的圖書:小說,管理,旅游,卡通(每一類假設(shè)了四本圖書)本系統(tǒng)為每一類書都寫了一個Jsp,每個Jsp把每一類的書全部羅列了出來。本系統(tǒng)中這一功能對于游客也是可以使用的。我們可以把自己想要管理的信息取一個唯一的名字name同時把它對應(yīng)的值value(就是我們想要管理的具體實(shí)物)一起寫入Session中,語法:(name, value)這樣我們只要查看我們要管理的實(shí)物的name所對應(yīng)的value就可以了。下面來介紹用Session管理用戶信息的技術(shù)實(shí)現(xiàn)。Servlet引擎是Web 服務(wù)器按照J(rèn)ava Servlet API定制的擴(kuò)展。一個Java servlet具有一個生命周期,這個生命周期定義了一個Servlet如何被載入并被初始化,如何接收請求并作出對請求的響應(yīng),如何被從服務(wù)中清除。(/).forward(request, response)。(sessionId, myNewShoppingCart)。HttpSession session = (true)。))。,39。代碼如下:(insert into userInfo (username,password) values(39。 if(usernameNull != null){ % tr td/td td%=usernameNull%/td /tr % } } %效果預(yù)覽:圖3 未輸入密碼錯誤圖圖4 用戶的用
點(diǎn)擊復(fù)制文檔內(nèi)容
高考資料相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1