Web開發技專業課程設計報告_第1頁
Web開發技專業課程設計報告_第2頁
Web開發技專業課程設計報告_第3頁
免費預覽已結束,剩余25頁可下載查看

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、WebFF發技專業課程設計報告安徽農業大學課程實踐(設計)報告實踐項目名稱圖書管理系統的設計項目組成人員院系年級專業0指導教師W1課程設計背景(包括:現狀、研究目的等)42需求分析(包括:功能分析、操作流程分析等)42.1需求分析33設計與實現(包括:前臺頁面、數據庫、業務邏輯等設計)53.1 數據庫結構設計43.1.1 概念結構設計43.1.2 邏輯結構設計73.2.1物理結構設計83.3.1系統功能設計圖書管理模塊功113.4系統界面設計與實現_.113.4.1系統登錄界面111課程設計背景圖書館信息化管理從最初的對圖書館業務管理實行信息化管理發展到對圖書館各個業務流程和網絡化管理,并建立

2、大規模的以個體文獻目錄聯機查詢為主的資源共享系統;而圖書館的正常運營中總是面對大雖的讀者信息,圖書信息及兩者相互作用產生的借書信息,所以要對讀者資源,讀者資源,借書信息進行管理,本系統的開發就是在于提高圖書管理的工作效率!2需求分析(包括:功能分析、操作流程分析等)2.1需求分析一般通用的圖書館借閱管理系統包括系統管理、讀者管理、編目、圖書流通、統計、查詢等功能。比較先進的能夠在一個界面下實現圖書、音像、期刊的管理,設置假期、設置暫離鎖(提高安全性)、暫停某些讀者的借閱權、導入導出讀者、交換MARC數據、升級輔助編碼庫等。此外隨著Internet應用的發展,一個完善的系統還應該提供無縫接入In

3、ternet的功能,通過IE瀏覽器讓讀者使用借閱資料查詢、更換密碼、預約、資料檢索等功能。有些系統還能提供讀者自助服務,可以開放一些客戶機讓讀者自行管理密碼、查詢自己的借閱史、預約資料、檢索資料等。在構造系統時,首先從需求出發構造數據庫表,然后再由數據庫結合需求劃分系統功能模塊。這樣,就把一個大的系統分解成了幾個小系統。這里把系統的層次劃分為了兩個部分:一個是一般用戶態:即圖書有服務子系統;另一個是管理員界面:提供圖書的管理和維護功能。對于不同子系統之間的功換,采用了登錄功能和用戶注銷功能。系統劃分了子系統后,下一步的工作是繼續劃分子系統的小模塊。先考慮在進入子系統時應該做什么,進入系統之后乂

4、應該做什么,提供那些服務等。例如,對于圖書信息服務子系統,在用戶進入時首先得調用相關數據庫表,找出用戶的圖書借閱情況;進入系統后,子系統得提供圖書查詢、圖書借閱和還書功能。另外,針對本系統的特殊情況,同時也考慮系統的可移植性,在系統中增加了數據庫路徑的維護部分。但由于本人技術有限,下面只做了部分設計3設計與實現(包括:前臺頁面、數據庫、業務邏輯等設計)3.1數據庫結構設計3.1.1概念結構設計(E-R圖)概念結構設計是將分析得到的用戶需求抽象為概念模型的過程,即在需求分析的基礎上,設計出能夠滿足用戶需求的各種實體以及它們之間的相互關系的模型。這樣才能更好地、更準確地用某一DBMS實現這些需求,

5、它是整個數據庫設計的關鍵。概念結構的主要特點是能真實、充分地反映現實世界,易于理解,易于更改,易于向關系、網狀、層次等各種數據模型轉換。描述概念模型的有力工具是E-R模型。Er圖:部分實體ER圖:3.1.2邏輯結構設計邏輯結構設計的任務就是把概念結構設計階段設計好的基本E-R圖轉換為與選用DBM芽品所支持的數據模型相符合的邏輯結構。設計邏輯結構時一般要分三步進行,首先是將概念結構轉換為一般的關系、網狀、層次模型,其次是將轉換來的關系、網狀、層次模型向特定DBM豉持下的數據模型轉換,最后是對數據模型進行優化?;贐/S的簡易圖書借閱管理系統采用的是將E-R圖向關系數據模型轉換。以下是由概念模型向

6、邏輯模型轉化的關系模式:管理員(管理員編號,管理員名稱,管理員密碼)圖書(圖書編碼?圖書名稱,圖書類別,書架,作者,價格,借閱次3.2.1物理結構設計數據庫的物理結構設計是對于給定的邏輯數據模型,選取一個最合適應用環境的物理結構。數據庫的物理結構指的是數據庫在物理設備上的存儲結構與存取方法,它依賴于給定的計算機系統表2.2管理員信息表(new_userlist)字段名注釋類型長度允許空默認值管理員自動增長userid編號int4(1,1)userNam管理員varch50Nulle名稱ar管理員varchuserPwd密碼ar50Null表2.3圖書信息表(new_booklist)字段名注釋

7、類型長度允許空默認值bookid圖書編碼varchar50bookName圖書名稱varchar50nullbookType圖書類別int4nullbookcase書架int100nullauother作者varchar80nullprice價格money8nullborrowSum借閱次數int4nullmud町.j3E。畋A蹈qpiA山創qi.gussuiinoyi町,5*!A町4|Slp3Sn-M3U丘|Q唳令旺一必|M|即部新礦峪。OAsipapeaAAau?!p|QjMauXunsay|.XjanQAjejqi|-M3u3.3.1系統功能設計圖書管理模塊功能(時間技術有限目前只有功能

8、)圖書類型管理:是對圖書進行分類管理,對圖書類型的添加、刪除、修改等功能。圖書信息管理:管理員對圖書信息的詳細錄入,修改圖書信息和刪除圖書信息等功能。3.4系統界面設計與實現3.4.1系統登錄界面系統首頁,同時也是登錄界面,在此界面中,管理可以根據自身情況登錄到系統中,管理員登錄界面如下圖所示:|jConnBeanjava國JSPdl-O.japdJSPdMjsp口JSPdl-3.jspSessionID:03605812F27F0194B9D723EB9AC10556管理員登陸:管理員姓名vrei管理員懸碼???提交相關代碼:用戶登陸界面管理員登陸:管理員姓名管理員密碼用戶身份驗證!-JSP

9、dl-0顯示圖書列表圖書歹U表圖書編號書名作者書類書架號價格借閱次數%new_booklistBeanrecords=conn.getAIIRecords();if(records!=null)(for(inti=0;irecords.length;i+)(out.println(”);out.println(+recordsi.getbooklD()+);out.println(+recordsi.getbookName()+);out.println(+recordsi.getauother()+);out.println(+recordsi.getbookType()+);out.pri

10、ntln(+recordsi.getbookCase()+);out.println(+recordsi.getprice()+);out.println(+recordsi.getborrowSum()+);out.println();%更多操作:添加圖書返回刪除圖書管理員添加圖書記錄:主JAHdPUjSpI0JbHdl-lJSp兇FdkiJSp劇JSHai*2:JSp|_LJJFCUygp*而匚L司iiic束Hj;ttp:/1ocalhost:80&9/web/JSPdI-3.jsp舔加新記錄圖書編號*書名*作者書類書架號*價格*借閱次數*WL相關代碼:JSPdl-3添加圖書記錄添加新記錄

11、圖書編號*書名v/td*作者v/td書類v/td*價格*借閱次數*%if(book.getbooklD()!=0&conn.insertRecord(book)out.println(添加記錄成功”;)%JSPdl-4刪除圖書記錄圖書歹US圖書編號書名作者書類書架號價格借閱次數選擇%new_booklistBeanrecords=conn.getAIIRecords();if(records!=null)(for(inti=0;irecords.length;i+)out.println(”);out.println(+recordsi.getbooklD()+);out.println(+r

12、ecordsi.getbookName()+);out.println(+recordsi.getauother()+);out.println(+recordsi.getbookType()+);out.println(+recordsi.getbookCase()+);out.println(+recordsi.getprice()+);out.println(+recordsi.getborrowSum()+);%inputtype=checkboxname=value=/%out.println();)%String口check=newStringrecords.length;for(

13、inti=0;icheck.length;i+)checki=request.getParameter(check+i);if(checki=null)checki=;if(checki.equals(+i)if(conn.deleteRecord(recordsi)out.println(刪除成功”);response.setHeader(refresh”,”1”);)%與系統相關的bean代碼:New_booklistBeanpackagebeans;publicclassnew_booklistBeanprivateStringbookID;/表示書編號;privateStringboo

14、kName;/書名;privateStringauother;/作者名;privateintbookType;/書類;privateintbookCase;/書架號;privateintprice;/書價;privateintborrowSum;/書被借的次數;publicStringgetbookID()returnbookID;publicvoidsetbookID(StringbookID)this.bookID=bookID;publicStringgetbookName()returnbookName;publicvoidsetbookName(StringbookName)this

15、.bookName=bookName;)publicStringgetauother()(returnauother;)publicvoidsetauother(Stringauother)(this.auother=auother;)publicintgetbookType()(returnbookType;publicvoidsetbookType(intbookType)(this.bookType=bookType;)publicintgetbookCase()(returnbookCase;)publicvoidsetbookCase(intbookCase)(this.bookCa

16、se=bookCase;)publicintgetprice()(returnprice;)publicvoidsetprice(intprice)(this.price=price;publicintgetborrowSum()(returnborrowSum;)publicvoidsetborrowSum(intborrowSum)(this.borrowSum=borrowSum;)ConnBeanpackagebeans;importjava.sql.*;/導入jdbc;publicclassConnBean(privateStringdriver=sun.jdbc.odbc.Jdbc

17、OdbcDriver;/默認驅動程序為jdbc-odbc馬區動;privateStringjdbcurl=jdbc:odbc:;/jdbcurlprivateStringdatabase=new_booklist”;/數據庫或數據源privateStringuserName=root”;/用戶名privateStringpassword=123456密理/privateConnectionconnection=null;publicConnectiongetConnection()(try(Class.forName(driver);/注冊驅動程序;connection=DriverManag

18、er.getConnection(jdbc:odbc:new_booklist”,”,);/建立連接;catch(ClassNotFoundExceptione1)e1.printStackTrace();catch(SQLExceptione2)e2.printStackTrace();returnconnection;publicvoidcloseConnection(Connectionconnection)/關閉連接;tryif(connection!=null)connection.close();connection=null;catch(SQLExceptione3)e3.pri

19、ntStackTrace();關閉執行語句publicvoidclosePstmt(PreparedStatementpstmt)(/tryif(pstmt!=null)pstmt.close();pstmt=null;catch(SQLExceptione)e.printStackTrace();publicvoidcloseResultSet(ResultSetrs)/關閉結果集語句tryif(rs!=null)rs.close();rs=null;catch(SQLExceptione)e.printStackTrace();publicStringgetDriver()/獲取驅動程序r

20、eturndriver;publicvoidsetDriver(Stringdriver)this.driver=driver;publicStringgetDatabase()returndatabase;publicvoidsetDatabase(Stringdatabase)this.database=database;publicStringgetPassword()returnpassword;publicvoidsetPassword(Stringpassword)(this.password=password;)publicStringgetJdbcurl()(returnjdb

21、curl;)publicvoidsetJdbcurl(Stringurl)(this.jdbcurl=url;)publicStringgetUserName()(returnuserName;)publicvoidsetUserName(StringuserName)(this.userName=userName;)New_libraryBeanpackagebeans;importjava.sql.Connection;importjava.sql.PreparedStatement;importjava.sql.ResultSet;importjava.sql.SQLException;

22、importjava.util.ArrayList;importjava.util.Collection;publicclassnew_libraryDBeanextendsConnBeanprivateConnectionconnection=null;publicnew_booklistBeangetAllRecords()/獲取所有記錄ResultSetrs=null;PreparedStatementpstmt=null;Collectionlist=newArrayList();tryconnection=getConnection();pstmt=connection.prepar

23、eStatement(select*fromnew_booklist);/數據表new_booklistrs=pstmt.executeQuery();while(rs.next()new_booklistBeannew_booklist=newnew_booklistBean();new_booklist.setbookID(rs.getString(1);new_booklist.setbookName(rs.getString(2);new_booklist.setauother(rs.getString(3);new_booklist.setbookType(rs.getInt(4);

24、new_booklist.setbookCase(rs.getInt(5);new_booklist.setprice(rs.getInt(6);new_booklist.setborrowSum(rs.getInt(7);list.add(new_booklist);catch(SQLExceptione)(e.printStackTrace();finally(closePstmt(pstmt);closeConnection(connection);new_booklistBeanrecords=(new_booklistBean)list.toArray(newnew_booklist

25、Bean0);returnrecords;查詢一條記錄publicnew_booklistBeanqueryARecord(StringsqlStr)/ResultSetrs=null;PreparedStatementpstmt=null;new_booklistBeannew_booklist=newnew_booklistBean();tryconnection=getConnection();pstmt=connection.prepareStatement(sqlStr);rs=pstmt.executeQuery();if(rs.next()new_booklist.setbook

26、ID(rs.getString(1);new_booklist.setbookName(rs.getString(2);new_booklist.setauother(rs.getString(3);new_booklist.setbookType(rs.getInt(4);new_booklist.setbookCase(rs.getInt(5);new_booklist.setprice(rs.getInt(6);new_booklist.setborrowSum(rs.getInt(7);catch(SQLExceptione)(e.printStackTrace();finally(c

27、loseResultSet(rs);closePstmt(pstmt);closeConnection(connection);returnnew_booklist;插入記錄publicbooleaninsertRecord(new_booklistBeanrecord)/PreparedStatementpstmt=null;StringinsStr=insertintonew_booklistvalues(?,?,?,?,?)if(record=null)returnfalse;tryconnection=getConnection();pstmt=connection.prepareSt

28、atement(insStr);pstmt.setString(1,record.getbookID();pstmt.setString(2,record.getbookName();pstmt.setString(3,record.getauother();pstmt.setInt(4,record.getbookType();pstmt.setInt(5,record.getbookCase();pstmt.setInt(6,record.getprice();pstmt.setInt(7,record.getborrowSum();pstmt.execute();catch(SQLExceptione)e.printStackTrace();finallyclosePstmt(pstmt);closeConnection(connection);)returntrue;)publicbooleandeleteRecord(new_booklistBeanrecord)(/刪除記錄;PreparedStatementpstmt=null;StringdelStr=d

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論