




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、圖書管理系統設計組長:楊建華 組員:胡寬齊 趙川 丁勵行摘要隨著網絡技術的發展以及電子商務、企業計算對網絡資源需求的不斷提高,JSP技術應運而生。現在,它已被證明是一種優秀的服務器端技術,是開發Web應用非常好的基礎。本論文針對個人圖書管理的需求和個性化因素,設計并實現了基于B/S模式的個人圖書管理系統,其中數據庫以MySQL進行數據管理和訪問,采用JSP技術設計網頁和連接數據庫。在該系統中,設計并實現了用戶登陸、圖書管理、期刊管理、CD管理和軟件管理模塊,這五個模塊包括了個人圖書管理的主要服務工作。此外,根據用戶愛好還設置了一個個性化的圖書管理模塊。本系統可以提高個人圖書管理的效率,將成為眾
2、多圖書收藏愛好者圖書管理的好幫手。關鍵詞:B/S;JSP;MySQL;個人圖書管理前臺設計前臺由:圖書類型管理,圖書排行,讀者檔案管理,圖書檔案管理等頁面構成1. 圖書類型管理:(由胡寬齊完成)代碼如下:<body onLoad="clockon(bgclock)"><%include file="banner.jsp"%><%include file="navigation.jsp"%><table width="778" border="0" cel
3、lspacing="0" cellpadding="0" align="center"> <tr> <td valign="top" bgcolor="#FFFFFF"><table width="99%" height="510" border="0" align="center" cellpadding="0" cellspacing="0&quo
4、t; bgcolor="#FFFFFF" class="tableBorder_gray"> <tr> <td height="510" valign="top" style="padding:5px;"><table width="98%" height="487" border="0" cellpadding="0" cellspacing="0">
5、<tr> <td height="22" valign="top" class="word_orange">當前位置:圖書管理 > 圖書類型設置 >>></td> </tr> <tr> <td align="center" valign="top"><%if(coll=null | coll.isEmpty()%> <table width="
6、;100%" height="30" border="0" cellpadding="0" cellspacing="0"> <tr> <td height="36" align="center">暫無圖書類型信息!</td> </tr> </table> <table width="100%" border="0" cellspacing="0
7、" cellpadding="0"> <tr> <td> <a href="#" onClick="window.open('bookType_add.jsp','','width=292,height=175')">添加圖書類型信息</a> </td> </tr></table> <%else /通過迭代方式顯示數據 Iterator it=coll.iterator(); int
8、 ID=0; String typename="" int days=0; %> <table width="91%" border="0" cellspacing="0" cellpadding="0"> <tr> <td width="82%"> </td><td width="18%" align="right"> <a href=&quo
9、t;#" onClick="window.open('bookType_add.jsp','','width=292,height=175')">添加圖書類型信息</a> </td> </tr></table> <table width="91%" border="1" cellpadding="0" cellspacing="0" bordercolor="#FFFF
10、FF" bordercolordark="#F6B83B" bordercolorlight="#FFFFFF"> <tr align="center" bgcolor="#e3F4F7"> <td width="35%" bgcolor="#F9D16B">圖書類型名稱</td> <td width="35%" bgcolor="#F9D16B">可借天數</td&
11、gt; <td width="16%" bgcolor="#F9D16B">修改</td> <td width="14%" bgcolor="#F9D16B">刪除</td> </tr><% while(it.hasNext() BookTypeForm bookTypeForm=(BookTypeForm)it.next();ID=bookTypeForm.getId().intValue();typename=chStr.toChinese(bo
12、okTypeForm.getTypeName();days=bookTypeForm.getDays();%> <tr> <td style="padding:5px;"><%=typename%></td> <td style="padding:5px;"><%=days%></td> <td align="center"><a href="#" onClick="window.open('
13、;bookType.do?action=bookTypeModifyQuery&ID=<%=ID%>','','width=292,height=175')">修改</a></td> <td align="center"><a href="bookType.do?action=bookTypeDel&ID=<%=ID%>">刪除</a></td> </tr><% %>
14、; </table></td> </tr> </table></td> </tr></table><% include file="copyright.jsp"%></td> </tr></table></body></html>2圖書檔案管理代碼如下:<%include file="navigation.jsp"%><table width="778" bord
15、er="0" cellspacing="0" cellpadding="0" align="center"> <tr> <td valign="top" bgcolor="#FFFFFF"><table width="99%" height="510" border="0" align="center" cellpadding="0" cel
16、lspacing="0" bgcolor="#FFFFFF" class="tableBorder_gray"> <tr> <td height="510" valign="top" style="padding:5px;"><table width="98%" border="0" cellpadding="0" cellspacing="0"> <
17、;tr> <td height="22" valign="top" class="word_orange">當前位置:圖書管理 > 圖書檔案管理 >>></td> </tr> <tr> <td align="center" valign="top"><%if(coll=null | coll.isEmpty()%> <table width="10
18、0%" height="30" border="0" cellpadding="0" cellspacing="0"> <tr> <td height="36" align="center">暫無圖書信息!</td> </tr> </table> <table width="100%" border="0" cellspacing="0"
19、; cellpadding="0"> <tr> <td> <a href="book_add.jsp">添加圖書信息</a> </td> </tr></table> <%else /通過迭代方式顯示數據 Iterator it=coll.iterator(); int ID=0; String bookname="" String barcode="" String typename="" Strin
20、g publishing="" String bookcase="" int storage=0; %> <table width="100%" border="0" cellspacing="0" cellpadding="0"> <tr> <td width="87%"> </td><td width="13%"> <a href="
21、;book_add.jsp">添加圖書信息</a></td> </tr></table> <table width="98%" border="1" cellpadding="0" cellspacing="0" bordercolor="#FFFFFF" bordercolordark="#F6B83B" bordercolorlight="#FFFFFF"> <tr al
22、ign="center" bgcolor="#e3F4F7"> <td width="13%" bgcolor="#F9D16B">條形碼</td> <td width="26%" bgcolor="#F9D16B">圖書名稱</td> <td width="15%" bgcolor="#F9D16B">圖書類型</td> <td width="
23、;14%" bgcolor="#F9D16B">出版社</td> <td width="12%" bgcolor="#F9D16B">書架</td> <td width="9%" bgcolor="#F9D16B">修改</td> <td width="5%" bgcolor="#F9D16B">刪除</td> </tr><% while(
24、it.hasNext() BookForm bookForm=(BookForm)it.next();ID=bookForm.getId().intValue();e(bookForm.getBookName();barcode=chStr.nullToString(bookForm.getBarcode()," ");typename=chStr.toChinese(bookForm.getTypeName();publishing=chStr.toChinese(bookForm.getPublishing();bookcase=chStr.nullT
25、oString(chStr.toChinese(bookForm.getBookcaseName()," ");%> <tr> <td style="padding:5px;"> <%=barcode%></td> <td style="padding:5px;"><a href="book.do?action=bookDetail&ID=<%=ID%>"><%=booknam
26、e%></a></td> <td style="padding:5px;"> <%=typename%></td> <td style="padding:5px;"> <%=publishing%></td> <td style="padding:5px;"> <%=bookcase%></td> <td align="cente
27、r"><a href="book.do?action=bookModifyQuery&ID=<%=ID%>">修改</a></td> <td align="center"><a href="book.do?action=bookDel&ID=<%=ID%>">刪除</a></td> </tr><% %> </table></td> </tr&g
28、t; </table></td> </tr></table><% include file="copyright.jsp"%></td> </tr></table></body></html>3讀者檔案管理(由趙川完成)代碼如下:<% page contentType="text/html; charset=gb2312" language="java" import="java.sql.*"
29、; errorPage="" %><% page import="com.dao.ReaderDAO" %><% page import="com.actionForm.ReaderForm" %><% page import="java.util.*"%><html><%Collection coll=(Collection)request.getAttribute("reader");%><head><tit
30、le>圖書館管理系統</title><link href="CSS/style.css" rel="stylesheet"></head><body onLoad="clockon(bgclock)"><%include file="banner.jsp"%><%include file="navigation.jsp"%><table width="778" border="0&q
31、uot; cellspacing="0" cellpadding="0" align="center"> <tr> <td valign="top" bgcolor="#FFFFFF"><table width="99%" height="510" border="0" align="center" cellpadding="0" cellspacing=&qu
32、ot;0" bgcolor="#FFFFFF" class="tableBorder_gray"> <tr> <td height="510" valign="top" style="padding:5px;"><table width="98%" height="487" border="0" cellpadding="0" cellspacing="0&qu
33、ot;> <tr> <td height="22" valign="top" class="word_orange">當前位置:讀者管理 > 讀者檔案管理 >>></td> </tr> <tr> <td align="center" valign="top"><%if(coll=null | coll.isEmpty()%> <table wid
34、th="100%" height="30" border="0" cellpadding="0" cellspacing="0"> <tr> <td height="36" align="center">暫無讀者信息!</td> </tr> </table> <table width="100%" border="0" cellspacing=&
35、quot;0" cellpadding="0"> <tr> <td> <a href="reader_add.jsp">添加讀者信息</a> </td> </tr></table> <%else /通過迭代方式顯示數據 Iterator it=coll.iterator(); int ID=0; String name="" String typename="" String barcode="&qu
36、ot; String paperType="" String paperNO="" String tel="" String email="" %> <table width="100%" border="0" cellspacing="0" cellpadding="0"> <tr> <td width="87%"> </td><td
37、width="13%"> <a href="reader_add.jsp">添加讀者信息</a></td> </tr></table> <table width="95%" border="1" cellpadding="0" cellspacing="0" bordercolor="#FFFFFF" bordercolordark="#F6B83B" border
38、colorlight="#FFFFFF"> <tr align="center" bgcolor="#e3F4F7"> <td width="13%" bgcolor="#F9D16B">條形碼</td> <td width="10%" bgcolor="#F9D16B">姓名</td> <td width="8%" bgcolor="#F9D16B&qu
39、ot;>讀者類型</td> <td width="12%" bgcolor="#F9D16B">證件類型</td> <td width="20%" bgcolor="#F9D16B">證件號碼</td> <td width="12%" bgcolor="#F9D16B"> </td> <td width="15%" bgcolor="#F9D16B&q
40、uot;>Email</td> <td width="5%" bgcolor="#F9D16B">修改</td> <td width="5%" bgcolor="#F9D16B">刪除</td> </tr><% while(it.hasNext() ReaderForm readerForm=(ReaderForm)it.next();ID=readerForm.getId().intValue();name=chStr.toChi
41、nese(readerForm.getName();barcode=readerForm.getBarcode();typename=chStr.nullToString(chStr.toChinese(readerForm.getTypename()," ");paperType=chStr.toChinese(readerForm.getPaperType();paperNO=chStr.nullToString(readerForm.getPaperNO()," ");tel=chStr.nullToString
42、(readerForm.getTel()," ");email=chStr.nullToString(readerForm.getEmail()," ");%> <tr> <td style="padding:5px;"><%=barcode%></td> <td style="padding:5px;"><a href="reader.do?action=readerDetail&ID=&
43、lt;%=ID%>"><%=name%></a></td> <td style="padding:5px;"><%=typename%></td> <td align="center"><%=paperType%></td> <td align="center"><%=paperNO%></td> <td align="center">&l
44、t;%=tel%></td> <td align="center"><%=email%></td> <td align="center"><a href="reader.do?action=readerModifyQuery&ID=<%=ID%>">修改</a></td> <td align="center"><a href="reader.do?action=rea
45、derDel&ID=<%=ID%>">刪除</a></td> </tr><% %> </table></td> </tr> </table></td> </tr></table><% include file="copyright.jsp"%></td> </tr></table></body></html>圖書排行榜(由丁勵行完成)代碼
46、如下:<% page contentType="text/html; charset=gb2312" language="java"%><% page import="com.dao.BorrowDAO"%><% page import="com.actionForm.BorrowForm"%><% page import="java.util.*"%><%><html><meta -equiv="Conte
47、nt-Type" content="text/html; charset=gb2312"><head><title>圖書館管理系統</title><link href="CSS/style.css" rel="stylesheet"></head><body onLoad="clockon(bgclock)"><%include file="banner.jsp"%><%include fi
48、le="navigation.jsp"%><%BorrowDAO borrowDAO=new BorrowDAO();Collection coll_book=(Collection)borrowDAO.bookBorrowSort();%><table width="778" height="510" border="0" align="center" cellpadding="0" cellspacing="0" bgcolor
49、="#FFFFFF" class="tableBorder_gray"> <tr> <td align="center" valign="top" style="padding:5px;"><table width="100%" border="0" cellpadding="0" cellspacing="0"> <tr> <td height="
50、;20" align="right" valign="middle" class="word_orange">當前位置:首頁 >>> </td> </tr> <tr> <td valign="top"><table width="100%" border="0" cellspacing="0" cellpadding="
51、;0"> <tr> <td height="57" background="Images/main_booksort.gif"> </td> </tr> <tr> <td height="72" valign="top"><table width="100%" height="63" border="0" cellpadding="0&
52、quot; cellspacing="0"> <tr> <td width="2%" rowspan="2"> </td> <td width="96%" align="center" valign="top"><table width="100%" border="1" cellpadding="0" cellspacing="
53、0" bordercolor="#FFFFFF" bordercolordark="#B7B6B6" bordercolorlight="#FFFFFF"> <tr align="center"> <td width="5%" height="25">排名</td><td width="10%">圖書條形碼</td><td width="24%">圖
54、書名稱</td><td width="10%">圖書類型</td><td width="10%">書架</td><td width="14%">出版社</td><td width="11%">作者</td><td>定價(元)</td> <td>借閱次數</td> </tr><%if(coll_book!=null && !col
55、l_book.isEmpty() Iterator it_book=coll_book.iterator(); int i=1; int degree=0; String bookname="" String typename="" String barcode_book="" String bookcase="" String pub="" String author="" String translator="" Float price=new Flo
56、at(0); while(it_book.hasNext() && i<6) BorrowForm borrowForm=(BorrowForm)it_book.next();bookname=chStr.toChinese(borrowForm.getBookName();barcode_book=borrowForm.getBookBarcode();typename=chStr.toChinese(borrowForm.getBookType();degree=borrowForm.getDegree();bookcase=chStr.toChinese(borro
57、wForm.getBookcaseName();pub=chStr.toChinese(borrowForm.getPubName();author=chStr.toChinese(borrowForm.getAuthor();price=borrowForm.getPrice();%> <tr> <td height="25" align="center"><%=i%></td><td style="padding:5px;"> <%=barc
58、ode_book%></td><td style="padding:5px;"><%=bookname%></td><td style="padding:5px;"><%=typename%></td><td align="center"> <%=bookcase%></td><td align="center"> <%=pub%>
59、</td><td width="11%" align="center"><%=author%></td><td width="8%" align="center"><%=price%></td> <td width="8%" align="center"><%=degree%></td> </tr><%i+;%> </table
60、> </td> <td width="2%" rowspan="2"> </td> </tr> <tr> <td height="30" align="right" valign="middle"><a href=borrow.do?action=bookBorrowSort><img src="Images/more.GIF" width="50&qu
61、ot; height="20" border="0"> </a></td> </tr> </table></td> </tr> </table> </td> </tr> </table> </td> </tr></table><% include file="copyright.jsp"%></body></html>后面
62、java類設計:本系統主要采用struts1.2+mysql5.0結合完成的,所以在這里只列舉數據庫鏈接,管理員的action與actionform;數據庫鏈接:package com.core;import java.io.InputStream;import java.sql.*;import java.util.Properties;public class ConnDB public Connection conn = null; public Statement stmt = null; public ResultSet rs = null; private static Strin
63、g propFileName = "/com/connDB.properties"/指定資源文件保存的位置 private static Properties prop = new Properties(); private static String dbClassName ="com.mysql.jdbc.Driver" private static String dbUrl = "jdbc:mysql:/localhost:3306/db_librarySys?user=root&password=111&useUnico
64、de=true" public ConnDB() try InputStream in=getClass().getResourceAsStream(propFileName); prop.load(in);/通過輸入流對象加載Properties文件 dbClassName = prop.getProperty("DB_CLASS_NAME");/獲取數據庫驅動 dbUrl = prop.getProperty("DB_URL", "jdbc:mysql:/localhost:3306/db_librarySys?user=root
65、&password=111&useUnicode=true"); catch (Exception e) e.printStackTrace();/輸出異常信息 public static Connection getConnection() Connection conn = null; try Class.forName(dbClassName).newInstance(); conn = DriverManager.getConnection(dbUrl); catch (Exception ee) rintStackTrace(); if (conn = nu
66、ll) System.err.println( "警告: DbConnectionManager.getConnection() 獲得數據庫鏈接失敗.rnrn鏈接類型:" + dbClassName + "rn鏈接位置:" + dbUrl); return conn; /* * 功能:執行查詢語句 */public ResultSet executeQuery(String sql) try conn = getConnection();stmt = conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITI
67、VE,ResultSet.CONCUR_READ_ONLY);rs = stmt.executeQuery(sql); catch (SQLException ex) System.err.println(ex.getMessage();return rs;/* * 功能:執行更新操作 */public int executeUpdate(String sql) int result = 0;try conn = getConnection();/調用getConnection()方法構造Connection對象的一個實例connstmt = conn.createStatement(Resu
68、ltSet.TYPE_SCROLL_INSENSITIVE,LY);result = stmt.executeUpdate(sql);/執行更新操作 catch (SQLException ex) result = 0;return result;/* * 功能:關閉數據庫的連接 */public void close() try if (rs != null) rs.close();if (stmt != null) e();if (conn != null) conn.close(); catch (Exception e) e.printStackTrace(System.err);管理
69、員的action:package com.action;import org.apache.struts.action.*;import javax.servlet. . ServletRequest;vlet. . ServletResponse;import com.actionForm.ManagerForm;import com.dao.ManagerDAO;import javax.servlet. . Session;public class Manager extends Action private ManagerDAO managerDAO = null;public Man
70、ager() this.managerDAO = new ManagerDAO();public ActionForward execute(ActionMapping mapping, ActionForm form, ServletRequest request, ServletResponse response) String action = request.getParameter("action");System.out.println("獲取的查詢字符串:" + action);if (action = null | ""
71、;.equals(action) return mapping.findForward("error"); else if ("login".equals(action) return managerLogin(mapping, form, request, response); else if ("managerAdd".equals(action) return managerAdd(mapping, form, request, response); else if ("managerQuery".equals(action) return manager
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 計算機二級知識藝術提升試題及答案
- 讀者心理與圖書館服務關系研究試題及答案
- 迎接挑戰2024年信息系統項目管理師考試的試題及答案
- 河南成考試題及答案
- 銀行質檢考試試題及答案
- 西醫臨床診斷考題集試題及答案
- 項目管理中的團隊協同與信任輪建立試題及答案
- 電磁場期末試題及答案
- 燒傷基礎知識試題及答案
- 拖拉機培訓試題及答案
- 【校園快遞管理系統的設計與實現(論文)12000字】
- u12籃球訓練計劃(6篇)
- RFJ005-2011 人民防空醫療救護工程設計標準
- 車輛維修工程第五章汽車修理工藝課件
- 光纜施工項目價格表(包干價參考)
- 《2019版預防和治療壓力性損傷快速參考指南》簡要分享
- 滅火劑輸送管道安裝檢驗批質量驗收記錄表
- GB/T 311.2-2013絕緣配合第2部分:使用導則
- GB/T 15712-1995非調質機械結構鋼
- GA/T 1093-2013出入口控制人臉識別系統技術要求
- GA 237-2018金屬腳鐐
評論
0/150
提交評論