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

正文內(nèi)容

畢業(yè)設(shè)計-基于jsp在線考試系統(tǒng)的設(shè)計和實現(xiàn)-資料下載頁

2024-12-02 16:22本頁面

【導(dǎo)讀】領(lǐng)域并發(fā)揮越來越重要的作用。本試卷自動生成系統(tǒng)使用Data數(shù)據(jù)控件連接數(shù)。據(jù)庫,實現(xiàn)對數(shù)據(jù)庫的各種操作。本系統(tǒng)能夠自動創(chuàng)建試卷、修改原有試卷、瀏。實現(xiàn)了考試出題的自動化。本試卷自動生成系統(tǒng)是采用當(dāng)今流行的JSP語言開發(fā)而成。象,可視化的編程工具軟件,它提供了許多內(nèi)部及外部控件:ajax、structs等,到屏幕上,一點即可。它不僅可以幫我們設(shè)計出漂亮的界面,同時它提供的數(shù)據(jù)。系統(tǒng)使用了sql作為數(shù)據(jù)庫平臺,它可以用最簡單的方式創(chuàng)建各種數(shù)。據(jù)庫,并且可以穩(wěn)定高效的支持jsp對它的調(diào)用。

  

【正文】 并向倉庫發(fā)定貨信息。 小型程序中,操作可能會被內(nèi)嵌在 Action 類,它是 struts 框架中控制器角色的一部分。當(dāng)邏輯簡單時這個方法很適合。 建議用戶將事務(wù)邏輯(要做什么)與 Action 類所扮演的角色(決定做什么)分開。 ◆ 視窗 由 JSP 建立, struts 包含擴展自定義標(biāo)簽庫,可以簡化創(chuàng)建完全國際化用戶界面的過程。 ◆ 控制器 struts 中,基本的控制器組件是 ActionServlet 類中的實例 servelt,實際使用的 servlet 在配置文件中由一組映射 (由 ActionMapping 類進行描述)進行定義。 框架中的組件 (由于 ROSE 工具還未能下載,只能找來這幅圖,它說明了一定問題,特別是ActionErrors,但它并沒有將 ActionMapping, JSP 和 Tag Library 包含進來,有時間作完替換 ) 框架中所使用的組件: ActionServlet 控制器 ActionClass 包含事務(wù)邏輯 ActionForm 顯示模塊數(shù)據(jù) ActionMapping 幫助控制器將請求映射到操作 ActionForward 用來指示操作轉(zhuǎn)移的對象 ActionError 用來存儲和回收錯誤 Struts 標(biāo)記庫 可以減輕開發(fā)顯示層次的工作 數(shù)據(jù)庫連接池應(yīng)用 數(shù)據(jù)庫連接是一種關(guān)鍵的有限的昂貴的資源,這一點在多用戶的網(wǎng)頁應(yīng)用程序中體現(xiàn)得尤為突出。對數(shù)據(jù)庫連接的管理能顯著影響到整個應(yīng)用程序的伸縮性和健壯性,影響到程序的性能指標(biāo)。數(shù)據(jù)庫連接池正是針對這個問題提出來的。 數(shù)據(jù)庫連接池負責(zé)分配、管理和釋放數(shù)據(jù)庫連接,它允許應(yīng)用程序重復(fù)使用一個現(xiàn)有的數(shù)據(jù)庫連接,而再不是重新建立一個;釋放空閑時間超過 最大空閑時間的數(shù)據(jù)庫連接來避免因為沒有釋放數(shù)據(jù)庫連接而引起的數(shù)據(jù)庫連接遺漏。這項技術(shù)能明顯提高對數(shù)據(jù)庫操作的性能。 數(shù)據(jù)庫連接池在初始化時將創(chuàng)建一定數(shù)量的數(shù)據(jù)庫連接放到連接池中,這些數(shù)據(jù)庫連接的數(shù)量是由最小數(shù)據(jù)庫連接數(shù)來設(shè)定的。無論這些數(shù)據(jù)庫連接是否被使用,連接池都將一直保證至少擁有這么多的連接數(shù)量。連接池的最大數(shù)據(jù)庫連接數(shù)量限定了這個連接池能占有的最大連接數(shù),當(dāng)應(yīng)用程序向連接池請求的連接數(shù)超過最大連接數(shù)量時,這些請求將被加入到等待隊列中。數(shù)據(jù)庫連接池的最小連接數(shù)和最大連接數(shù)的設(shè)置要考慮到下列幾個因素: 1) 最小連接數(shù)是連接池一直保持的數(shù)據(jù)庫連接,所以如果應(yīng)用程序?qū)?shù)據(jù)庫連接的使用量不大,將會有大量的數(shù)據(jù)庫連接資源被浪費; 2) 最大連接數(shù)是連接池能申請的最大連接數(shù),如果數(shù)據(jù)庫連接請求超過此數(shù),后面的數(shù)據(jù)庫連接請求將被加入到等待隊列中,這會影響之后的數(shù)據(jù)庫操作。 3) 如果最小連接數(shù)與最大連接數(shù)相差太大,那么最先的連接請求將會獲利,之后超過最小連接數(shù)量的連接請求等價于建立一個新的數(shù)據(jù)庫連接。不過,這些大于最小連接數(shù)的數(shù)據(jù)庫連接在使用完不會馬上被釋放,它將被放到連接池中等待重復(fù)使用或是空閑超時后被釋放。 AJAX 技術(shù)應(yīng)用 Ajax 在本質(zhì)上是一個瀏覽器端的技術(shù),首先面臨無可避免的第一個問題即是瀏覽器的兼容性問題。各家瀏覽器對于 JavaScript/ DOM/ CSS 的支持總有部分不太相同或是有 Bug,甚至同一瀏覽器的各個版本間對于 JavaScript/ DOM/ CSS的支持也有可能部分不一樣。這導(dǎo)致程序員在寫 Ajax 應(yīng)用時花大部分的時間在調(diào)試瀏覽器的兼容性而非在應(yīng)用程序本身。因此,目前大部分的 Ajax 鏈接庫或開發(fā)框架大多以 js鏈接庫的形式存在,以定義更高階的 JavaScript API 、 JavaScript 對象(模板)、或者 JavaScript Widgets 來解決此問題。如 prototy。 Ajax 技術(shù)之主要目的在于局部交換客戶端及服務(wù)器之間的數(shù)據(jù)。如同傳統(tǒng)之主從架構(gòu),無可避免的會有部分的業(yè)務(wù)邏輯會實現(xiàn)在客戶端,或部分在客戶端部分在服務(wù)器。由于業(yè)務(wù)邏輯可能分散在客戶端及服務(wù)器,且以不同之程序語言實現(xiàn),這導(dǎo)致 Ajax 應(yīng)用程序極難維護。如有用戶接口或業(yè)務(wù)邏輯之更動需求,再加上前一個 JavaScript/DOM/CSS 之兼容性問題, Ajax 應(yīng)用往往變成程序員的夢魘。針對業(yè)務(wù)邏輯分散的問題, Ajax開發(fā)框架大致可分為兩類: 將業(yè)務(wù)邏輯及表現(xiàn)層放在瀏覽器,數(shù)據(jù)層放在服務(wù)器:因為所有的程序以 JavaScript 執(zhí)行在客戶端,只有需要數(shù)據(jù)時才向服務(wù)器要求服務(wù),此法又稱為胖客戶端( fat client)架構(gòu)。服務(wù)器在此架構(gòu)下通常僅用于提供及儲存數(shù)據(jù)。此法的好處在于程序員可以充分利用 JavaScript 搭配業(yè)務(wù)邏輯來做出特殊的用戶接口,以符合終端用戶的要求。但是問題也不少,主因在第一, JavaScript 語言本身之能力可能不足以處理復(fù)雜的業(yè)務(wù)邏輯。第二, JavaScript 的執(zhí)行效能一向不好。第三, JavaScript 訪問服務(wù)器數(shù)據(jù),仍需適當(dāng)?shù)姆?wù)器端程序之配合。第四,瀏覽器兼容性的問題又出現(xiàn)。有些 Ajax 開發(fā)框架如 DWR 企圖以自動生成 JavaScript 之方式來避免兼容的問題,并開立通道使得 JavaScript 可以直接調(diào)用服務(wù)器端的 Java 程序來簡化數(shù)據(jù)的訪問。但是前述第一及第二兩個問題仍然存在,程序員必須費相當(dāng)?shù)牧獠拍苓_到應(yīng)用程序之規(guī)格要求,或可能根本無法達到要求。 將表現(xiàn)層 [2]、業(yè)務(wù)邏輯、及數(shù)據(jù)層放在服務(wù)器,瀏覽器僅有用戶接口引擎( User Interface engine);此法又稱為瘦客 戶端( thin client)架構(gòu),或中心服務(wù)器( servercentric)架構(gòu)。瀏覽器的用戶接口引擎僅用于反映服務(wù)器的表現(xiàn)層以及傳達用戶的輸入回到服務(wù)器的表現(xiàn)層。由瀏覽器所觸發(fā)之事件亦送回服務(wù)器處理,根據(jù)業(yè)務(wù)邏輯來更新表現(xiàn)層,然后反映回瀏覽器。因為所有應(yīng)用程序完全在服務(wù)器執(zhí)行,數(shù)據(jù)及表現(xiàn)層皆可直接訪問,程序員只需使用服務(wù)器端相對較成熟之程序語言(如 Java 語言)即可,不需再學(xué)習(xí) JavaScript/DOM/CSS,在開發(fā)應(yīng)用程序時相對容易。缺點在于用戶接口引擎以及表現(xiàn)層通常以標(biāo)準(zhǔn)組件的形式存在,如需要 特殊組件(用戶接口)時,往往須待原框架之開發(fā)者提供,緩不濟急。如開源碼 Ajax 開發(fā)框架 ZK目前支持 XUL 及 XHTML 組件,尚無 XAML之支持。 Ajax 是以異步的方式向服務(wù)器提交需求。對服務(wù)器而言,其與傳統(tǒng)的提交窗體需求并無不同,而且由于是以異步之方式提交,如果同時有多個 Ajax 需求及窗體提交需求,將無法保證哪一個需求先獲得服務(wù)器的響應(yīng)。這會造成應(yīng)用程序典型的多進程( process)或多線程( thread)的競爭( racing)問題。程序員因此必須自行處理或在 JavaScript 里面動手腳以避免這類競爭 問題的發(fā)生(如 Ajax 需求未響應(yīng)之前,先 disable 送出按鈕),這又不必要的增加了程序員的負擔(dān)。目前已知有自動處理此問題之開發(fā)框架似乎只有 ZK。 系統(tǒng)的主要功能模塊的實現(xiàn) 登錄子模塊實現(xiàn) 為了檢驗用戶是否是系統(tǒng)的合法用戶,所以需要用戶輸入用戶名和密碼來核對用戶的合法性。用戶的登錄模塊就是要完成這樣的一個功能。該模塊需要用到admin 這個 Bean,需要設(shè)計一個表單讓用戶輸入用戶名和密碼。 登錄界面是整個系統(tǒng)第一個與用戶見面的,所以登錄界面的美觀是很重要的,這里我設(shè)計背景的修飾。系統(tǒng)登錄設(shè)計 界面如圖 4- 1。 圖 4- 1 系統(tǒng)登錄界面 根據(jù)用戶輸入信息不同系統(tǒng)調(diào)用 admin(Bean)進入管理頁面(管理員,教師,學(xué)生)。 實現(xiàn)本模塊的主要代碼如下所示 : % String uid=(username)。 String pwd=(pwd)。 String sql=。 String cx=new String((cx).getBytes(8859_1))。 if((管理員 )) { sql=select * from [allusers] where username=39。+uid+39。 and pwd=39。+pwd+39。 } if((教師 )) { sql=select * from [jiaoshi] where gonghao=39。+uid+39。 and mima=39。+pwd+39。 } if((學(xué)生 )) { sql=select * from [xuesheng] where xuehao=39。+uid+39。 and mima=39。+pwd+39。 } ResultSet RS_result=(sql)。 if(!()) { (scriptalert(39。 你 輸 入 的 用 戶 不 存 在 或 密 碼 錯 誤 , 請 重 新 登錄 !39。)。(1)。/script)。 } else{ (username,uid)。 if((管理員 )) { (cx,(cx))。 } else { (cx,cx)。 } ()。 } ()。 % 出卷子模塊實現(xiàn) 出卷子模塊 包含三個基本功能:管理試題表,添加試題類型表,出卷管理。這些分別由 teacher 的 Bean 集成,當(dāng)靜態(tài) JSP 頁面輸入產(chǎn)生要求,系統(tǒng)響應(yīng)要求自動在 teacher 中尋找相關(guān)的類,實現(xiàn)功能,其運行界面如下圖 4- 2。 實現(xiàn)本模塊的主要代碼如下所示 : p已有選擇題列表: /p form name=form1 id=form1 method=post action= 搜索 :題目 : input name=bianhao type=text id=bianhao / input type=submit name=Submit value=查找 / /form table width=100% border=1 align=center cellpadding=3 cellspacing=1 bordercolor=00FFFF style=bordercollapse:collapse tr td width=5% bgcolor=A4B6D7序號 /td td width=35% bgcolor=39。A4B6D739。題目 /td td width=6% align=center bgcolor=39。A4B6D739。答案 /td td width=9% align=center bgcolor=39。A4B6D739。章節(jié) /td td width=6% align=center bgcolor=39。A4B6D739。難度 /td td width=11% align=center bgcolor=39。A4B6D739。教師 /td td width=19% align=center bgcolor=A4B6D7添加時間 /td td width=9% align=center bgcolor=A4B6D7操作 /td /tr % String sql=。 sql=select * from xuanzeti where 1=1。 if((bianhao)== ||(bianhao)==null ) {} else { sql=sql+ and timu like 39。%+(bianhao)+%39。 } sql=sql+ order by id desc。 ResultSet RS_result=(sql)。 String id=。 String timu=。String daan=。String zhangjie=。String nandu=。String jiaoshi=。 String addtime=。 int i=0。 while(()){ i=i+1。 id=(id)。 timu=(timu)。daan=(daan)。zhangjie=(zhangjie)。nandu=(nandu)。jiaoshi=(jiaoshi)。 addtime=(addtime)。 % tr td%=i %/td td%=timu %/tdtd align=center%=daan %/td td align=center%=zhangjie %/td td align=center%=nandu %/td td align=center%=jiaoshi %/td td%=addtime %/td td align=centera href=?id=%=id%修改 /a a href=?id=%=id %amp。tablename=xuanzeti onclick=return confirm(39。真的要刪除? 39。)刪除
點擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1