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

正文內(nèi)容

基于struts和hibernate的教學(xué)答疑系統(tǒng)畢業(yè)論文(編輯修改稿)

2025-07-24 18:45 本頁(yè)面
 

【文章內(nèi)容簡(jiǎn)介】 ,SQL92,SQL:1999,SQL:2003,其中SQL:2003是該標(biāo)準(zhǔn)的當(dāng)前版本。MySQ是開源的:開源意味著任何人都可以使用和修改該軟件,任何人都可以從Internet上下載和使用MySQL而不需要支付任何費(fèi)用。如果你愿意,你可以研究其源代碼,并根據(jù)你的需要修改它。本系統(tǒng)采用MySQL 。 Myeclipse的介紹說(shuō)到Myeclips先得說(shuō)下Eclipse,Eclipse 是一個(gè)開放源代碼的、基于 Java 的可擴(kuò)展開發(fā)平臺(tái)。就其本身而言,它只是一個(gè)框架和一組服務(wù),用于通過(guò)插件組件構(gòu)建開發(fā)環(huán)境。幸運(yùn)的是,Eclipse 附帶了一個(gè)標(biāo)準(zhǔn)的插件集,包括 Java 開發(fā)工具(Java Development Tools,JDT)。MyEclipse 是什么?簡(jiǎn)單而言,MyEclipse是Eclipse的插件,也是一款功能強(qiáng)大的J2EE集成開發(fā)環(huán)境,支持代碼編寫、配置、測(cè)試以及除錯(cuò)。所以作為本次畢業(yè)設(shè)計(jì)IDE工具的不二人選。 第四章 教學(xué)答疑系統(tǒng)的總體設(shè)計(jì)項(xiàng)目目標(biāo):本軟件功能大致分為三大模塊:學(xué)生模塊,教師模塊和管理員模塊。學(xué)生模塊:學(xué)生用戶進(jìn)行操作的模塊。教師模塊:教師用戶進(jìn)行操作的模塊。管理員模塊:管理員用戶進(jìn)行操作的模塊。具體各用戶需求分析:1.學(xué)生用戶的需求分析學(xué)生登錄后可以選擇查看個(gè)人資料或者進(jìn)入答疑系統(tǒng),進(jìn)入答疑系統(tǒng)后可以提出問(wèn)題,問(wèn)題提交給服務(wù)器端,等待教師的解答。若教師解答了此題目,當(dāng)學(xué)生下次查看自己?jiǎn)栴}時(shí)即可看到老師回答的答案。2.教師用戶的需求分析教師登錄后可以選擇查看個(gè)人資料或者進(jìn)入答疑系統(tǒng),進(jìn)入答疑系統(tǒng)后可以查看未解題目,對(duì)未解問(wèn)題的解答,教師還可以進(jìn)行題庫(kù)的管理操作,給題庫(kù)添加刪除修改章節(jié),章節(jié)關(guān)鍵字,章節(jié)標(biāo)準(zhǔn)答案,標(biāo)準(zhǔn)答案的關(guān)鍵字。讓題庫(kù)能適應(yīng)學(xué)生的要求。3.管理員用戶的需求分析管理員登錄后可以為對(duì)用戶的管理操作,對(duì)題目的管理操作和個(gè)人信息的修改,以及添加新的用戶。系統(tǒng)結(jié)構(gòu)采用B/S結(jié)構(gòu):B/S(Browser/Server)結(jié)構(gòu)即瀏覽器和服務(wù)器結(jié)構(gòu)。它是隨著Internet技術(shù)的興起,對(duì)C/S結(jié)構(gòu)的一種變化或者改進(jìn)的結(jié)構(gòu)。在這種結(jié)構(gòu)下,用戶工作界面是通過(guò)WWW瀏覽器來(lái)實(shí)現(xiàn),極少部分事務(wù)邏輯在前端(Browser)實(shí)現(xiàn),但是主要事務(wù)邏輯在服務(wù)器端(Server)實(shí)現(xiàn),形成所謂三層(3tier)結(jié)構(gòu)。一個(gè)三層架構(gòu)的應(yīng)用程序由三部分組成,這三部分各自分布在網(wǎng)絡(luò)中的不同地方。這三個(gè)部分分別是:工作站或表示層接口、事務(wù)邏輯、數(shù)據(jù)庫(kù)以及與其相關(guān)的程序設(shè)計(jì)。在一個(gè)典型的三層架構(gòu)應(yīng)用程序中,應(yīng)用程序的用戶工作站包括提供圖形用戶界面(GUI)的程序設(shè)計(jì)和具體的應(yīng)用程序入口表格或交互式窗口。事務(wù)邏輯處在局域網(wǎng)(LAN)服務(wù)器或其他共享主機(jī)上,它作為響應(yīng)工作站所發(fā)出客戶請(qǐng)求的服務(wù)器,而相對(duì)于處于大型機(jī)的第三層它是作為客戶端,并且決定需要什么數(shù)據(jù)以及數(shù)據(jù)存儲(chǔ)在哪里。第三層包括數(shù)據(jù)庫(kù)以及處理讀寫以及訪問(wèn)數(shù)據(jù)庫(kù)的程序。然而應(yīng)用程序的設(shè)計(jì)可能比這個(gè)架構(gòu)要復(fù)雜,對(duì)于大型程序來(lái)說(shuō),這個(gè)三層模式是一種比較簡(jiǎn)便的考慮方法。這種應(yīng)用程序的設(shè)計(jì)使用客戶/服務(wù)器模式,各層可以同時(shí)開發(fā),并且可以由不同的成員組用不同的語(yǔ)言來(lái)開發(fā)。因?yàn)楦鱾€(gè)層次的開發(fā)不會(huì)影響其他層次,所以這種模型對(duì)于進(jìn)一步開發(fā)軟件是很方便的。這樣就大大簡(jiǎn)化了客戶端電腦載荷,減輕了系統(tǒng)維護(hù)與升級(jí)的成本和工作量,降低了用戶的總體成本(TCO)。以目前的技術(shù)看,局域網(wǎng)建立B/S結(jié)構(gòu)的網(wǎng)絡(luò)應(yīng)用,并通過(guò)Internet/Intranet模式下數(shù)據(jù)庫(kù)應(yīng)用,相對(duì)易于把握、成本也是較低的。它是一次性到位的開發(fā),能實(shí)現(xiàn)不同的人員,從不同的地點(diǎn),以不同的接入方式(比如LAN, WAN, Internet/Intranet等)訪問(wèn)和操作共同的數(shù)據(jù)庫(kù);它能有效地保護(hù)數(shù)據(jù)平臺(tái)和管理訪問(wèn)權(quán)限,服務(wù)器數(shù)據(jù)庫(kù)也很安全 。特別是在JAVA這樣的跨平臺(tái)語(yǔ)言出現(xiàn)之后,B/S架構(gòu)管理軟件更是方便、快捷、高效。系統(tǒng)流程圖如(圖41)所示登錄判斷權(quán)限學(xué)生模塊教師模塊管理員模塊查看問(wèn)題提交問(wèn)題修改資料修改資料查看問(wèn)題解答問(wèn)題管理人員管理問(wèn)題注冊(cè)退出終止圖(41) 系統(tǒng)流程圖系統(tǒng)用例圖設(shè)計(jì)系統(tǒng)用例圖如(圖42)所示圖42 系統(tǒng)用例圖serviceLocator表示層StrutsStruts Action,ActionForm,Jsp,etc.DAO ClassesJavaBeanHibernate session Management持久層HibernateDataSourceTransactionsBusiness Service ClassesQueryLanguage Support and other Hibernate Services本系統(tǒng)的分層結(jié)構(gòu)以及技術(shù)選用: (圖43)圖43 分層結(jié)構(gòu)技術(shù)圖在整體設(shè)計(jì)模式上采用StrutsMVC模式的B/S架構(gòu)各層的技術(shù)選用:在表現(xiàn)層:選用Struts,JSP為主要表現(xiàn)技術(shù)。: servlet servletnameaction/servletname servletclass/servletclass initparam paramnameconfig/paramname paramvalue/WEBINF//paramvalue /initparam initparam paramnamedebug/paramname paramvalue3/paramvalue /initparam initparam paramnamedetail/paramname paramvalue3/paramvalue /initparam loadonstartup0/loadonstartup /servlet servletmapping servletnameaction/servletname urlpattern*.do/urlpattern /servletmapping在業(yè)務(wù)層:選用JavaBean為主要技術(shù),負(fù)責(zé)業(yè)務(wù)的操作。在持久層:選用Hibernate為主要技術(shù),負(fù)責(zé)對(duì)持久對(duì)象的操作。由于使用Hibernate為持久層,由于我使用了Spring做中間代理,部分代碼如下: !—數(shù)據(jù)庫(kù)連接設(shè)置 !—設(shè)置JDBC驅(qū)動(dòng) bean id=dataSource class= property name=driverClassName value/value /property /bean!—設(shè)置MYSQL的URL property name=url valuejdbc:mysql://localhost:3306/aq_system/value/property!—設(shè)置用戶名,密碼 property name=usernamevalueroot/value/propertyproperty name=passwordvalueroot/value/property !—SQL方言設(shè)置 bean id=hibernateProperties class= property name=properties props prop key=/prop prop key=true/prop /props /property /bean在數(shù)據(jù)庫(kù)層上:選用開源的MySql為數(shù)據(jù)庫(kù)。:工廠模式。 工廠模式主要是為創(chuàng)建對(duì)象提供過(guò)渡接口,以便將創(chuàng)建對(duì)象的具體過(guò)程屏蔽隔離起來(lái),達(dá)到提高靈活性和低耦合的目的。跟為系統(tǒng)以后的擴(kuò)展提供了良好接口。以AdminMgmtService為例,//產(chǎn)生DAO的工廠,綁定在線程上面,單例,線程安全。public interface AdminMgmtService { Userinfo login(String loginname, String loginpassword)。 Module getModules(Integer id)。 CollectionQuestion queryAll()。 Question findByquestionid(Integer id)。 void deleteQuestion(Integer id)。 CollectionUserinfo queryAlluser()。 void deleteUser(Integer id)。 void register(Userinfo userinfo)。}AdminMgmtServiceImpl類代碼如下,在需要使用DAO時(shí)就直接調(diào)用方法,寫好get和set方法:public class AdminMgmtServiceImpl implements AdminMgmtService { private AdminMgmtDAO dao。 public AdminMgmtDAO getDao() { return dao。 } public void setDao(AdminMgmtDAO dao) { = dao。 } public Module getModules(Integer id) { Module ms =(id)。 return ms。 } public Userinfo login(String loginname, String loginpassword) { return (loginname ,loginpassword) } public void deleteQuestion(Integer id) { (id)。 } public void deleteUser(Integer id) { (id)。 } public Question findByquestionid(Integer id) { return (id)。 } public CollectionQuestion queryAll() { return ()。 } public CollectionUserinfo queryAlluser() { return ()。 } public void register(Userinfo userinfo) { (userinfo)。 }}在業(yè)務(wù)層如果要調(diào)用某個(gè)DAO對(duì)象,: bean id=adminService class= property name=dao ref local=adminDAO/ /property /bean在Action中如果要調(diào)用某個(gè)業(yè)務(wù)對(duì)象,只需寫如下代碼:private AdminMgmtService service。 public AdminMgmtService getService() { return service。 } public void setService(AdminMgmtService service) { = service。}直接使用service調(diào)用方法 第五章 系統(tǒng)詳細(xì)設(shè)計(jì)系統(tǒng)共分學(xué)生用戶模塊,教師用戶模塊,題庫(kù)管理模塊和管理員模塊。 系統(tǒng)數(shù)據(jù)庫(kù)設(shè)計(jì) 數(shù)據(jù)庫(kù)表的設(shè)計(jì)本系統(tǒng)共設(shè)用戶表userinfo,問(wèn)題表questions,模塊表modules,章節(jié)關(guān)鍵字表operations,模塊功能表rights。(圖51)問(wèn)題表用戶表章節(jié)關(guān)鍵字表模塊功能表圖51 數(shù)據(jù)庫(kù)聯(lián)系圖 數(shù)據(jù)庫(kù)表的建立以u(píng)serinfo表為例,由于實(shí)體類設(shè)計(jì)管理員,學(xué)生,教師都有用戶表而來(lái),所以建表是需要考慮到權(quán)限功能的不同,因此在用戶表有字段status區(qū)分到底是哪個(gè)權(quán)限的用戶(表52)。表52 userinfo表Id為與任務(wù)業(yè)務(wù)無(wú)關(guān)的獨(dú)立字段,其優(yōu)點(diǎn)是能確保永遠(yuǎn)不會(huì)修改。為此表主鍵約束。status為用戶的類型:1為學(xué)生,2為教師,3為管理員;類型Varcharloginname為用戶名。唯一約束。 類型VarcharloginPassword為用戶密碼。 類型VarcharEmail 為用戶;唯一約束。 類型Varcharname 為真實(shí)姓名;類型Varcharsex 為性別;類型Varcharphone 為電話;類型Varchar具體建表SQL建表語(yǔ)言為:CREATE TABLE `userinfo` ( `id` int(10) NOT NULL auto_increment, `loginname` varchar(20) NOT NULL, `loginpassword` varchar(20) NOT NULL, `name` varchar(20) NOT NULL, `sex` varchar(10) default NULL, `phone` int(20) default
點(diǎn)擊復(fù)制文檔內(nèi)容
法律信息相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1