課程設(shè)計(jì)簡單圖書管理系統(tǒng)的設(shè)計(jì)與開發(fā)_第1頁
課程設(shè)計(jì)簡單圖書管理系統(tǒng)的設(shè)計(jì)與開發(fā)_第2頁
課程設(shè)計(jì)簡單圖書管理系統(tǒng)的設(shè)計(jì)與開發(fā)_第3頁
課程設(shè)計(jì)簡單圖書管理系統(tǒng)的設(shè)計(jì)與開發(fā)_第4頁
課程設(shè)計(jì)簡單圖書管理系統(tǒng)的設(shè)計(jì)與開發(fā)_第5頁
已閱讀5頁,還剩45頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、武漢理工大學(xué)華夏學(xué)院課程設(shè)計(jì)報(bào)告書課程名稱: JAVA課程設(shè)計(jì) 題 目:簡單圖書管理系統(tǒng)的設(shè)計(jì)與開發(fā)系 名:信息工程系 專業(yè)班級(jí):計(jì)算機(jī)1112姓 名: 曾高峰學(xué) 號(hào):指導(dǎo)教師: 劉春燕 2013年9 月13日課程設(shè)計(jì)任務(wù)書學(xué)生姓名: 曾高峰 專業(yè)班級(jí): 計(jì)算機(jī)1112指導(dǎo)教師: 劉春燕 工作單位: 信息工程系 設(shè)計(jì)題目:簡單圖書管理系統(tǒng)的設(shè)計(jì)與開發(fā)要求完成的主要任務(wù):(包括課程設(shè)計(jì)工作量及其技術(shù)要求,以及說明書撰寫等具體要求)1.學(xué)生用戶對(duì)圖書管理系統(tǒng)的要求(1)借閱圖書,續(xù)借圖書,歸還圖書(2)查詢學(xué)生用戶基本資料和借閱圖書情況(3)按各種方式查詢圖書館的藏書2.圖書管理員對(duì)圖書管理系統(tǒng)的

2、要求(1)圖書信息錄入,注銷陳舊圖書;(2)對(duì)新手進(jìn)行登記或注銷(3)信息查詢,可根據(jù)不同關(guān)鍵字進(jìn)行條件查詢;設(shè)計(jì)報(bào)告撰寫格式要求:1、明確課程設(shè)計(jì)的目的和重要性,認(rèn)真領(lǐng)會(huì)課程設(shè)計(jì)的題目,讀懂課程設(shè)計(jì)指導(dǎo)書的要求,學(xué)會(huì)設(shè)計(jì)的基本方法與步驟,學(xué)會(huì)如何運(yùn)用前修知識(shí)與收集、歸納相關(guān)資料解決具體問題的方法。嚴(yán)格要求自己,要獨(dú)立思考,按時(shí)、獨(dú)立完成課程設(shè)計(jì)任務(wù)。2、設(shè)計(jì)報(bào)告:要求層次清楚、整潔規(guī)范、不得相互抄襲,凡正文內(nèi)容有整段完全相同者一律以抄襲論處。設(shè)計(jì)報(bào)告正文字?jǐn)?shù)不少于0.2萬字(不包括附錄)時(shí)間安排:消化資料、系統(tǒng)調(diào)查 1天項(xiàng)目原型開發(fā)  1天數(shù)據(jù)庫建模 1天系統(tǒng)管理 1天用

3、戶管理 2天系統(tǒng)功能實(shí)現(xiàn) 3天系統(tǒng)打包,驗(yàn)收 1天指 導(dǎo) 教 師 簽字: 2013年 9 月 1 日系 主 任 簽 字: 2013 年9 月 1 日1 目標(biāo) 圖書管理系統(tǒng)在日常生活中用到的非常多,在對(duì)圖書的管理方面非常方便圖書管理系統(tǒng)設(shè)計(jì)的主要目的是對(duì)圖書館種類繁多的書籍進(jìn)行管理,并且合理的管理好用戶的借還信息。提高圖書館的工作效率,降低管理成本。內(nèi)容主要包括: 1.學(xué)生賬號(hào)的注冊(cè),登陸,查看,修改個(gè)人信息,查詢所有和按條件查詢圖書,借閱圖書,續(xù)借圖書,等操作。 2管理員的登陸,注冊(cè),管理員查看管理員的信息,管理員查看管理學(xué)生信息(對(duì)學(xué)生的刪除和修改),對(duì)圖書館圖書進(jìn)行查詢,注冊(cè)注銷等操作。2

4、 軟件開發(fā)環(huán)境與技術(shù)簡介2.1 開發(fā)工具介紹開發(fā)工具:Myeclipse8.52.2 數(shù)據(jù)庫系統(tǒng)數(shù)據(jù)庫系統(tǒng): mysql server5.1 服務(wù)器:Tomcat6.02.3 硬件環(huán)境運(yùn)行環(huán)境客戶端CUP:高于奔騰三500MHz內(nèi)存:大于64M可使用的操作系統(tǒng):Windows XP,瀏覽器:IE5.5以上瀏覽器 服務(wù)器端CPU:高于奔騰三900MHz內(nèi)存:大于1Gb操作系統(tǒng):Windows xp瀏覽器:IE5.5以上瀏覽器2.4 軟件環(huán)境服務(wù)器端需要MyEclips,Microsoft SQL Server 5.1數(shù)據(jù)庫。 2.5技術(shù)手段2.5.1 jsp技術(shù)JSP(Java Server P

5、ages)是由Sun Microsystems公司倡導(dǎo)、許多公司參與一起建立的一種動(dòng)態(tài)網(wǎng)頁技術(shù)標(biāo)準(zhǔn)。 JSP技術(shù)是用JAVA語言作為腳本語言的,JSP網(wǎng)頁為整個(gè)服務(wù)器端的JAVA庫單元提供了一個(gè)接口來服務(wù)于HTTP的應(yīng)用程序。在傳統(tǒng)的網(wǎng)頁HTML文件(*.htm,*.html)中加入Java程序片段(Scriptlet)和JSP標(biāo)記(tag),就構(gòu)成了JSP網(wǎng)頁(*.jsp)。Web服務(wù)器在遇到訪問JSP網(wǎng)頁的請(qǐng)求時(shí),首先執(zhí)行其中的程序片段,然后將執(zhí)行結(jié)果以HTML格式返回給客戶。程序片段可以操作數(shù)據(jù)庫、重新定向網(wǎng)頁以及發(fā)送 email 等等,這就是建立動(dòng)態(tài)網(wǎng)站所需要的功能。所有程序操作都在服

6、務(wù)器端執(zhí)行,網(wǎng)絡(luò)上傳送給客戶端的僅是得到的結(jié)果,對(duì)客戶瀏覽器的要求最低,可以實(shí)現(xiàn)無Plugin,無ActiveX,無Java Applet,甚至無Frame。JSP的優(yōu)點(diǎn):·對(duì)于用戶界面的更新,其實(shí)就是由 Web Server進(jìn)行的,所以給人的感覺更新很快。·所有的應(yīng)用都是基于服務(wù)器的,所以它們可以時(shí)刻保持最新版本。·客戶端的接口不是很繁瑣,對(duì)于各種應(yīng)用易于部署、維護(hù)和修改。 2.5.2 B/S 開發(fā)模式B/S,即Browser/Server(瀏覽器/服務(wù)器)結(jié)構(gòu),是隨著Internet技術(shù)的興起,對(duì)C/S結(jié)構(gòu)的一種變化或者改進(jìn)的結(jié)構(gòu)??蛻魴C(jī)上只要安裝一個(gè)瀏覽器,

7、如Netscape Navigator或Internet Explorer,服務(wù)器安裝Oracle、Sybase、Informix或 SQL Server等數(shù)據(jù)庫,在這種結(jié)構(gòu)下,用戶界面完全通過WWW瀏覽器實(shí)現(xiàn),一部分事務(wù)邏輯在前端實(shí)現(xiàn),但是主要事務(wù)邏輯在服務(wù)器端實(shí)現(xiàn),瀏覽器通過Web Server 同數(shù)據(jù)庫進(jìn)行數(shù)據(jù)交互,形成所謂3-tier結(jié)構(gòu)。B/S結(jié)構(gòu),主要是利用了不斷成熟的WWW瀏覽器技術(shù),結(jié)合瀏覽器的多種Script語言(VBScript、JavaScript)和ActiveX技術(shù),用通用瀏覽器就實(shí)現(xiàn)了原來需要復(fù)雜專用軟件才能實(shí)現(xiàn)的強(qiáng)大功能,并節(jié)約了開發(fā)成本,是一種全新的軟件系統(tǒng)構(gòu)造

8、技術(shù)。B/S模式以Web服務(wù)器為系統(tǒng)的中心,客戶機(jī)通過其瀏覽器向Web服務(wù)器提出查詢請(qǐng)求(HTTP協(xié)議方式),Web服務(wù)器根據(jù)需要向數(shù)據(jù)庫服務(wù)器發(fā)出數(shù)據(jù)請(qǐng)求。數(shù)據(jù)庫則根據(jù)查詢或查詢條件返回相應(yīng)的數(shù)據(jù)結(jié)果給Web服務(wù)器,最后Web服務(wù)器再將結(jié)果翻譯成為HTML或各類腳本語言的格式,并傳送給客戶機(jī)上的瀏覽器,用戶通過瀏覽器即可瀏覽自己所需的結(jié)構(gòu)。 SQL ServerSQL Server是由Microsoft開發(fā)和推廣的關(guān)系數(shù)據(jù)庫管理系統(tǒng)(DBMS),它最初是由Microsoft、Sybase和Ashton-Tate三家公司共同開發(fā)的,并于1988年推出了第一個(gè)OS/2版本。SQL Server近

9、年來不斷更新版本,1996年,Microsoft推出了SQL Server6.5版本;1998年,SQL Server7.0版本和用戶見面;SQL Server 2000是Microsoft公司于2000年推出的最新版本。其最重要的特點(diǎn)是:11真正的客戶機(jī)/服務(wù)器體系結(jié)構(gòu)圖形化用戶界面,使系統(tǒng)管理和數(shù)據(jù)庫管理更加直觀、簡單。 豐富的編程接口工具,為用戶進(jìn)行程序設(shè)計(jì)提供了更大的選擇的余地。具有很好的伸縮性,可跨越從運(yùn)行Windows95/98的膝上電腦到運(yùn)行Windows2000/xp的大型多處理器等多種平臺(tái)使用。SQL Server提供數(shù)據(jù)倉庫功能,這個(gè)功能只在Oracle和其他更昂貴的DBM

10、S中才有。3 系統(tǒng)需求分析經(jīng)過對(duì)我校詳細(xì)調(diào)查,并多次與負(fù)責(zé)圖書管理的老師進(jìn)行研討,并對(duì)同學(xué)們做了問卷調(diào)查后,加深了對(duì)現(xiàn)行圖書管理業(yè)務(wù)的深刻了解,與此同時(shí),將整個(gè)圖書管理的業(yè)務(wù)流程抽象描述如下:學(xué)生要求:1. 圖書館需要有學(xué)生注冊(cè)功能,學(xué)生能夠在圖書管理系統(tǒng)中自行借閱圖書。2. 學(xué)生能夠在網(wǎng)上自行修該自己的密碼等信息3. 能夠查找所有的圖書信息4. 能夠按條件查詢自己所要查找的圖書信息5. 學(xué)生借閱圖書以后在網(wǎng)上登記自己所借閱圖書的信息,并能夠?qū)崿F(xiàn)續(xù)借功能管理員要求:1. 能夠?qū)D書館新到館的圖書進(jìn)行入館操作。2. 能夠查看所有的圖書狀態(tài)并對(duì)圖書進(jìn)行修改操作3. 能夠查看所有的學(xué)生信息,對(duì)新注冊(cè)

11、的用戶進(jìn)行管理,對(duì)老用戶進(jìn)行刪除。4.管理員能夠增加和刪除管理員能夠?qū)芾磉M(jìn)行操作(有一個(gè)超級(jí)管理員不能刪 除)。4 系統(tǒng)總體設(shè)計(jì)4.1 系統(tǒng)功能簡介該圖書管理系統(tǒng)分為兩部分,學(xué)生部分,管理員部分,學(xué)生部分主要包括學(xué)生的注冊(cè)和登陸,學(xué)生對(duì)自己信息的查看和修改。同時(shí)能夠查詢所有圖書和按條件查詢圖書信息。同時(shí)能夠在線進(jìn)行借閱和續(xù)借圖書。管理員主要包括,對(duì)圖書的入館操作,對(duì)圖書進(jìn)行修改和刪除,管理員對(duì)普通用戶進(jìn)行修改和刪除,同時(shí)能注冊(cè)管理員,系統(tǒng)中有個(gè)最開始的管理員其他管理員不能刪除。該系統(tǒng)簡單的實(shí)現(xiàn)了圖書管理系統(tǒng)的一些功能。 圖書管理系統(tǒng)4.2 系統(tǒng)功能模塊規(guī)劃圖如:圖1注冊(cè)管理員修改圖書信息管理

12、學(xué)生信息圖書入館和注銷借閱和續(xù)借圖書查詢和按條件查詢圖書查看修改個(gè)人信息登陸和注冊(cè)新用戶學(xué)生部分管理員部分圖1:系統(tǒng)規(guī)劃圖4.3 系統(tǒng)數(shù)據(jù)庫設(shè)計(jì) 4.3.1管理員表 如表1數(shù)據(jù)名數(shù)據(jù)類型長度是否允許為空主鍵自動(dòng)增長idInt是是是adidvarchar50是否否adnamevarchar50是否否adpassvarchar50是否否 表1:管理員設(shè)計(jì)表 4.3.2學(xué)生信息表如 表2數(shù)據(jù)名數(shù)據(jù)類型長度是否允許為空主鍵自動(dòng)增長uidInt是是是usernamevarchar50是否否upassvarchar50是否否qqvarchar50是否否ageint50是否否telvarchar50是否否S

13、exVarchar50是否否emailVarchar50是否否descrVarchar50是否否 表二:學(xué)生信息表4.3.3圖書信息表如 表3數(shù)據(jù)名數(shù)據(jù)類型長度是否允許為空主鍵自動(dòng)增長idInt是是是bkidvarchar50是否否bknamevarchar50是否否bkinvarchar50是否否Writervarchar50是否否表3圖書信息表datevarchar50是否否學(xué)生名.學(xué)生id名稱密碼編號(hào)4.4 數(shù)據(jù)庫的操作E-R圖:如圖2管理 管理員 讀者添加刪除修改續(xù)借修改還書時(shí)間管理 圖書管理刪除添加編號(hào).書名結(jié)束時(shí)間圖2系統(tǒng)操作E-R圖5 系統(tǒng)詳細(xì)設(shè)計(jì)5.1 用戶信息管理管理員通過數(shù)

14、據(jù)庫管理和維護(hù)系統(tǒng)可以對(duì)讀者進(jìn)行管理和維護(hù)。管理員可以對(duì)表中的信息進(jìn)行刪除、修改、更新等基本操作以管理和維護(hù)讀者信息。用戶信息管理模塊圖:如圖3用戶信息管理讀者信息的刪除讀者信息的修改圖3用戶信息管理模塊圖5.2圖書信息管理 模塊圖如圖4 新書入庫、舊書報(bào)廢、圖書信息的修改。新書入庫指對(duì)需求比較大的圖書,如果數(shù)庫中有,則增大其庫存量,如果沒有,則進(jìn)購新書。舊書報(bào)廢指因?yàn)槿藶橐蛩兀ㄈ缃栝喓髞G失、損壞等)致使圖書不能被繼續(xù)借閱的,應(yīng)從書庫中清除掉。新書入庫和舊書報(bào)廢時(shí),應(yīng)對(duì)該書庫總數(shù)進(jìn)行調(diào)按,尤其是當(dāng)舊書報(bào)廢后,若該書總數(shù)為零時(shí),應(yīng)自動(dòng)將該書信息刪除。我們還對(duì)圖書進(jìn)行了分類,如果因?yàn)槟硶臏p少,導(dǎo)

15、致該類圖書的減少,則當(dāng)該類圖書總數(shù)為零時(shí),系統(tǒng)也應(yīng)自動(dòng)將該圖書類別信息刪除。圖書信息管理圖書信息的添加圖書信息的刪除圖書信息的修改圖4圖書信息管理模塊圖5.3管理員信息管理管理員可以對(duì)管理員表中的信息進(jìn)行插入、刪除、修改、更新等基本操作以管理和維護(hù)讀者信息。如圖5所示:管理員管理管理員添加管理員修改管理員刪除修改密碼圖5管理員信息管理5.4管理員登錄模塊說明這一模塊是用于對(duì)管理員登錄用戶名和密碼進(jìn)行驗(yàn)證并根據(jù)其權(quán)限賦予相應(yīng)的功能的處理。對(duì)用戶所輸入的用戶名及密碼進(jìn)行加密認(rèn)證,并將登錄信息傳遞給管理系統(tǒng),從而進(jìn)行管理。如果輸入的用戶名和密碼無法得到認(rèn)證,即使是了解網(wǎng)站構(gòu)成的專業(yè)人士也無法進(jìn)入系統(tǒng)

16、。管理員的用戶信息可以得到十足的保障,使得即使作為遠(yuǎn)程系統(tǒng)也擁有如同本地系統(tǒng)一樣的安全性。保障了系統(tǒng)數(shù)據(jù)的安全。5.5管理員登錄模塊功能圖如圖6管理員登錄模塊包括:正常登錄、超級(jí)管理員登錄、密碼認(rèn)證、退出。管理員登錄正常登錄超級(jí)管理員登錄退出系統(tǒng)密碼認(rèn)證輸入驗(yàn)證信息是否通過驗(yàn)證YN進(jìn)入登錄首頁進(jìn)入管理首頁 圖6:管理員登錄模塊功能圖5.7用戶管理模塊圖 如圖85.6管理員登錄模塊流程圖:如圖7查詢用戶信息用戶管理修改用戶信息刪除用戶信息用戶信息分類 圖7管理員登錄模塊流程圖8用戶管理模塊圖5.8管理員用戶管理模塊如圖9選擇操作退出查看處理刪除繼續(xù)操作NY進(jìn)入用戶管理圖9管理員管理用戶流程圖5.

17、9管理員圖書管理模塊流程圖如圖10進(jìn)入圖書管理選擇操作查看刪除添加修改繼續(xù)操作退出YN圖10:管理員管理圖書流程圖5.10借閱管理模塊功能圖借閱管理模塊功能圖如圖11所示:借閱管理圖書借閱圖書歸還圖11借閱管理5.11借閱管理模塊流程圖借閱管理模塊流程圖如圖12所示:進(jìn)入借閱管理選擇操作借閱歸還繼續(xù)操作退出圖12:借閱管理模塊流程圖NY5.12學(xué)生登錄流程圖 如圖13輸入驗(yàn)證信息是否通過驗(yàn)證YN進(jìn)入登錄首頁進(jìn)入個(gè)人首頁圖13:學(xué)生登錄流程圖5.13學(xué)生查詢圖書如圖14圖14學(xué)生查詢圖書流程圖個(gè)人首頁選擇操作按條件查詢借閱續(xù)借修改個(gè)人信息繼續(xù)操作退出YN6 系統(tǒng)測試與運(yùn)行 6.1學(xué)生注冊(cè)頁面如圖

18、14圖14學(xué)生注冊(cè)頁面6.2學(xué)生登錄界面如圖15圖15學(xué)生登錄界面6.3學(xué)生主頁如圖16 圖16學(xué)生主頁圖6.4學(xué)生查詢所有圖書圖17學(xué)生查詢所有圖書6.5學(xué)生借閱圖書如圖18圖18學(xué)生借閱圖書6.6按圖書名查找圖書 圖19查詢后如圖20 圖20后界面圖6.7學(xué)生修改自己信息如圖21 圖21 學(xué)生修改自己信息圖6.7管理員登錄如圖22 圖22管理員登錄圖6.8管理員引導(dǎo)界面如圖23 圖23管理員引導(dǎo)界面圖6.9查看所有學(xué)生信息如圖24 圖24管理員修改學(xué)生信息圖6.10管理員修改學(xué)生信息圖25 圖25管理員修改學(xué)生信息圖6.11查看所有圖書如圖26圖26查看所有圖書圖6.12管理員修改圖書如圖

19、27圖27管理員修改圖書圖6.13注冊(cè)管理員如圖28圖28注冊(cè)管理員圖總 結(jié)上個(gè)學(xué)期我們系統(tǒng)的學(xué)習(xí)了java的基本知識(shí),但是計(jì)算機(jī)專業(yè)是一門實(shí)踐性比較強(qiáng)的學(xué)科,僅僅學(xué)習(xí)了理論知識(shí)并不能代表你能合理的運(yùn)用,正如中國的一句古話所說:“紙上得來終覺淺,絕知此事要躬行”。只有經(jīng)歷過實(shí)訓(xùn),經(jīng)歷過實(shí)戰(zhàn)的磨練才能讓自己的知識(shí)變得更加純熟,讓自己對(duì)java的理解變得更加深刻。這個(gè)學(xué)期的最開始我們開始了為期兩周的課程設(shè)計(jì),我選的題目是圖書管理系統(tǒng),這次課程設(shè)計(jì)我采用了團(tuán)隊(duì)合作的方式,我和梁海傳為一個(gè)小組,這次課程設(shè)計(jì)我們采用的是現(xiàn)在比較流行的B/S開發(fā)模式,用到了我們以前沒有學(xué)到的一些技術(shù)如javascript

20、, tomcat,mySql Sever數(shù)據(jù)庫技術(shù),和網(wǎng)頁布局的相關(guān)知識(shí)。同時(shí)也使用了外面比較流行一些開發(fā)工具,如myEclips這讓我們更加了解外面的行情,更加熟練的掌握流行的開發(fā)工具。讓我們與外面的社會(huì)進(jìn)行接軌。這次的課程設(shè)計(jì)給我印象最深刻的地方在于將我們的知識(shí)融合在一起,讓我們的知識(shí)放在一個(gè)大熔爐里面進(jìn)行淬煉,讓我們的知識(shí)運(yùn)用的更加純熟。從拿到這個(gè)題目開始的毫無思緒,然后一點(diǎn)點(diǎn)的進(jìn)行需求分析,一點(diǎn)點(diǎn)的了解系統(tǒng)所需要的功能,在這過程中我們積極的查詢資料咨詢老師。在開發(fā)過程中我們不僅要學(xué)習(xí)以前沒有接觸到的知識(shí),同時(shí)也要溫習(xí)以前學(xué)習(xí)的舊知識(shí),這讓我們大腦高度集中,在開發(fā)過程中遇到過系統(tǒng)漏洞,解

21、決不了時(shí)積極思考,積極咨詢老師的意見,在老師的意見上加以總結(jié)并加上自己的新想法。當(dāng)自己的程序運(yùn)行出來達(dá)到自己想要的效果時(shí)我和我的組員都松了一口氣!但是接下來的問題讓我們哭笑不得在測試軟件時(shí)總出現(xiàn)類不存在的問題,經(jīng)過小組的討論和測試都沒發(fā)現(xiàn)問題,無奈之下只好咨詢老師,在老師和我們的共同努力之下終于將問題找出來了,原來是在開發(fā)過程中由于命名不規(guī)范導(dǎo)致在寫程序過程中總將類名寫錯(cuò),這讓我們小組苦惱不已,這讓我們有了更加深刻的印象,在以后的開發(fā)過程中一定要注意命名的規(guī)范 ,同時(shí)也要注意格式的規(guī)范!以前的我不知道自己的學(xué)習(xí)方向,但是這次實(shí)訓(xùn)過后我突然有一種豁然開朗的感覺讓我了解到了自己的學(xué)習(xí)方向,更加明確

22、了自己的學(xué)習(xí)目的。通過與帶我們實(shí)訓(xùn)老師的交談我了解到j(luò)ava的應(yīng)用前景,和我們?cè)趯W(xué)校應(yīng)該學(xué)習(xí)的知識(shí)。同時(shí)也讓我接觸到了企業(yè)所應(yīng)用的一些技術(shù),讓我在學(xué)校中能夠自學(xué)者些知識(shí),這次實(shí)訓(xùn)讓我收獲良多,以后有這樣的實(shí)訓(xùn)我還會(huì)參加!參 考 文 獻(xiàn)1 王建華. ASP NET 2.0 動(dòng)態(tài)網(wǎng)站開發(fā)技術(shù)與實(shí)踐M.北京:電子工業(yè)出版社,2007.2梁建武.ASP程序設(shè)計(jì)M.北京:中國水利水電出版社,2003:1-12. 3陳宗興,杜國梁ASPNET網(wǎng)絡(luò)系統(tǒng)程序開發(fā)M.北京:中國水利水電出版社,2004:20-40.4李英俊,畢斐ASPNET動(dòng)態(tài)網(wǎng)站開發(fā)教程M北京:清華大學(xué)出版社.5邱珊,詹春華.java語言程序

23、設(shè)計(jì).北京:科學(xué)出版社,2013.6朱福喜,黃昊.java項(xiàng)目開發(fā)與畢業(yè)設(shè)計(jì)指導(dǎo).北京:清華大學(xué)出版社.附錄:原程序核心代碼主要方法:package com.softeem.dao;import java.sql.*;import java.util.ArrayList;import java.util.List;import com.softeem.model.User;import com.softeem.model.Userbook;public class UserDAO / 注冊(cè)public boolean add(String username, String upass, Str

24、ing sex, int age,String email, String tel, String qq, String descr) boolean flag = false;/ 將數(shù)據(jù)存放到db中去try / 加載驅(qū)動(dòng)Class.forName("com.mysql.jdbc.Driver");/ 建立連接Connection conn = DriverManager.getConnection("jdbc:mysql:/localhost:3306/wb", "root", "123456");/ 準(zhǔn)備語句S

25、tring sql = "insert into tb_user(username,upass,sex,age,email,tel,qq,descr) values('"+ username+ "','"+ upass+ "','"+ sex+ "',"+ age+ ",'"+ email+ "','"+ tel+ "','"+ qq+ "','

26、;"+ descr+ "')"/ 準(zhǔn)備對(duì)象Statement st = conn.createStatement();/ 執(zhí)行flag = !st.execute(sql); catch (ClassNotFoundException e) e.printStackTrace(); catch (SQLException e) e.printStackTrace();return flag;/注冊(cè)圖書信息public boolean addbook(String bkid,String bkname,String bkin,String writer)bo

27、olean flag=false;try Class.forName("com.mysql.jdbc.Driver");Connection conn=DriverManager.getConnection("jdbc:mysql:/localhost:3306/wb", "root", "123456");String sql = "insert into book(bkid,bkname,bkin,writer) values('"+bkid+"','&qu

28、ot;+bkname+"','"+bkin+"','"+writer+"')"Statement st = conn.createStatement();/ 執(zhí)行flag = !st.execute(sql); catch (ClassNotFoundException e) / TODO Auto-generated catch blocke.printStackTrace(); catch (SQLException e) / TODO Auto-generated catch blocke

29、.printStackTrace();return flag;/注冊(cè)管理員public boolean addadmin(String adid,String adname,String adpass)boolean flag=false;try Class.forName("com.mysql.jdbc.Driver");Connection conn=DriverManager.getConnection("jdbc:mysql:/localhost:3306/wb", "root", "123456");St

30、ring sql = "insert into admin(adid,adname,adpass) values('"+adid+"','"+adname+"','"+adpass+"')"Statement st = conn.createStatement();/ 執(zhí)行flag = !st.execute(sql); catch (ClassNotFoundException e) / TODO Auto-generated catch blocke.printS

31、tackTrace(); catch (SQLException e) / TODO Auto-generated catch blocke.printStackTrace();return flag;/ 登錄public boolean login(String username, String upass) boolean flag=false;try / 加載驅(qū)動(dòng)Class.forName("com.mysql.jdbc.Driver");/ 建立連接Connection conn = DriverManager.getConnection("jdbc:my

32、sql:/localhost:3306/wb", "root", "123456");/ 準(zhǔn)備語句String sql = "select * from tb_user where username='" + username+ "' and upass='" + upass + "'"/準(zhǔn)備對(duì)象Statement st=conn.createStatement();/執(zhí)行/C U D 寫 boolean a=execute(sql)、int a=exe

33、cuteUpdate(sql)/R select 讀-ResultSet r=executeQuery(sql);ResultSet rs=st.executeQuery(sql);/如何取出rs中的數(shù)據(jù)進(jìn)行判斷int id=0;/判斷rs中是否有數(shù)據(jù)while(rs.next()/有數(shù)據(jù),則取出數(shù)據(jù)id=rs.getInt("uid");if(id>0)flag=true; catch (SQLException e) e.printStackTrace(); catch (ClassNotFoundException e) e.printStackTrace();

34、return flag;/登陸管理員public boolean loginadmin(String adname,String adpass)boolean flag=false;try / 加載驅(qū)動(dòng)Class.forName("com.mysql.jdbc.Driver");/ 建立連接Connection conn = DriverManager.getConnection("jdbc:mysql:/localhost:3306/wb", "root", "123456");/ 準(zhǔn)備語句String sql

35、= "select * from admin where adname='" + adname+ "' and adpass='" + adpass + "'"/準(zhǔn)備對(duì)象Statement st=conn.createStatement();/執(zhí)行/C U D 寫 boolean a=execute(sql)、int a=executeUpdate(sql)/R select 讀-ResultSet r=executeQuery(sql);ResultSet rs=st.executeQuery(sql

36、);/如何取出rs中的數(shù)據(jù)進(jìn)行判斷int id=0;/判斷rs中是否有數(shù)據(jù)while(rs.next()/有數(shù)據(jù),則取出數(shù)據(jù)id=rs.getInt("id");if(id>0)flag=true; catch (SQLException e) e.printStackTrace(); catch (ClassNotFoundException e) e.printStackTrace();return flag;/查詢所有tb_user信息/List<> 泛型public List<User> findAll()/創(chuàng)建一個(gè)可變長度的鏈表Lis

37、t<User> list=new ArrayList<User>();/我需要去吧數(shù)據(jù)庫中的信息查詢出來try / 加載驅(qū)動(dòng)Class.forName("com.mysql.jdbc.Driver");/ 建立連接Connection conn = DriverManager.getConnection("jdbc:mysql:/localhost:3306/wb", "root", "123456");/ 準(zhǔn)備語句String sql = "select * from tb_us

38、er "/準(zhǔn)備對(duì)象Statement st=conn.createStatement();/執(zhí)行/C-insert U-update D-delete 寫 boolean a=execute(sql)、int a=executeUpdate(sql)/R select 讀-ResultSet r=executeQuery(sql);ResultSet rs=st.executeQuery(sql);/判斷rs中是否有數(shù)據(jù)while(rs.next()/有數(shù)據(jù),則取出數(shù)據(jù)int uid=rs.getInt("uid");String username=rs.getS

39、tring("username");String upass=rs.getString("upass");String sex=rs.getString("sex");String age=rs.getString("age");String qq=rs.getString("qq");String email=rs.getString("email");String tel=rs.getString("tel");String descr=rs.getS

40、tring("descr");/System.out.println("uid:"+uid+"username:"+username);/封裝User u=new User();u.setUid(uid);u.setUsername(username);u.setUpass(upass);u.setAge(age);u.setSex(sex);u.setTel(tel);u.setEmail(email);u.setQq(qq);u.setDescr(descr);/將user放入listlist.add(u); catch (SQL

41、Exception e) e.printStackTrace(); catch (ClassNotFoundException e) e.printStackTrace();return list;/查詢所有book信息public List<Userbook> findAllBook()/創(chuàng)建一個(gè)可變長度的鏈表List<Userbook> list=new ArrayList<Userbook>();/我需要去吧數(shù)據(jù)庫中的信息查詢出來try / 加載驅(qū)動(dòng)Class.forName("com.mysql.jdbc.Driver");/ 建

42、立連接Connection conn = DriverManager.getConnection("jdbc:mysql:/localhost:3306/wb", "root", "123456");/ 準(zhǔn)備語句String sql = "select * from book "/準(zhǔn)備對(duì)象Statement st=conn.createStatement();/執(zhí)行/C-insert U-update D-delete 寫 boolean a=execute(sql)、int a=executeUpdate(sql

43、)/R select 讀-ResultSet r=executeQuery(sql);ResultSet rs=st.executeQuery(sql);/判斷rs中是否有數(shù)據(jù)while(rs.next()/有數(shù)據(jù),則取出數(shù)據(jù)int id=rs.getInt("id");String bkname=rs.getString("bkname");String bkid=rs.getString("bkid");String writer=rs.getString("writer");String bkin=rs.ge

44、tString("bkin");String date=rs.getString("date");/System.out.println("uid:"+uid+"username:"+username);/封裝Userbook u=new Userbook();u.setBkid(bkid);u.setBkname(bkname);u.setWriter(writer);u.setBkin(bkin);u.setId(id);u.setDate(date);/將user放入listlist.add(u); catc

45、h (SQLException e) e.printStackTrace(); catch (ClassNotFoundException e) e.printStackTrace();return list;/查詢學(xué)生自己信息 public List<User> findselfinfo(String username1,String upass1) List<User> list=new ArrayList<User>();/我需要去吧數(shù)據(jù)庫中的信息查詢出來try / 加載驅(qū)動(dòng)Class.forName("com.mysql.jdbc.Driv

46、er");/ 建立連接Connection conn = DriverManager.getConnection("jdbc:mysql:/localhost:3306/wb", "root", "123456");/ 準(zhǔn)備語句String sql = "select * from tb_user where username='"+username1+"' and upass='"+upass1+"'"/準(zhǔn)備對(duì)象Statement

47、st=conn.createStatement();/執(zhí)行/C-insert U-update D-delete 寫 boolean a=execute(sql)、int a=executeUpdate(sql)/R select 讀-ResultSet r=executeQuery(sql);ResultSet rs=st.executeQuery(sql);/判斷rs中是否有數(shù)據(jù)while(rs.next()/有數(shù)據(jù),則取出數(shù)據(jù)int uid=rs.getInt("uid");String username=rs.getString("username&quo

48、t;);String upass=rs.getString("upass");String sex=rs.getString("sex");String age=rs.getString("age");String qq=rs.getString("qq");String email=rs.getString("email");String tel=rs.getString("tel");String descr=rs.getString("descr")

49、;/System.out.println("uid:"+uid+"username:"+username);/封裝User u=new User();u.setUid(uid);u.setUsername(username);u.setUpass(upass);u.setAge(age);u.setSex(sex);u.setTel(tel);u.setEmail(email);u.setQq(qq);u.setDescr(descr);/將user放入listlist.add(u); catch (SQLException e) e.printStac

50、kTrace(); catch (ClassNotFoundException e) e.printStackTrace();return list; /根據(jù)書名查找圖書信息 public List<Userbook> findbookbybkname(String condition)/創(chuàng)建一個(gè)可變長度的鏈表List<Userbook> list=new ArrayList<Userbook>();/我需要去吧數(shù)據(jù)庫中的信息查詢出來try / 加載驅(qū)動(dòng)Class.forName("com.mysql.jdbc.Driver");/ 建立

51、連接Connection conn = DriverManager.getConnection("jdbc:mysql:/localhost:3306/wb", "root", "123456");/ 準(zhǔn)備語句String sql = "select * from book where bkname="+condition;/準(zhǔn)備對(duì)象Statement st=conn.createStatement();/執(zhí)行/C-insert U-update D-delete 寫 boolean a=execute(sql)、

52、int a=executeUpdate(sql)/R select 讀-ResultSet r=executeQuery(sql);ResultSet rs=st.executeQuery(sql);/判斷rs中是否有數(shù)據(jù)while(rs.next()/有數(shù)據(jù),則取出數(shù)據(jù)int id=rs.getInt("id");String bkname=rs.getString("bkname");String bkid=rs.getString("bkid");String writer=rs.getString("writer&q

53、uot;);String bkin=rs.getString("bkin");String date=rs.getString("date");/System.out.println("uid:"+uid+"username:"+username);/封裝Userbook u=new Userbook();u.setBkid(bkid);u.setBkname(bkname);u.setWriter(writer);u.setBkin(bkin);u.setId(id);u.setDate(date);/將user放入listlist.add(u); catch (SQLException e) e.printStackTra

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(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ǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論