圖書管理系統

2023-01-26 00:24:06 字數 2905 閱讀 4506

綜合設計報告

學生姓名:

學號:年級專業:

學院:提交日期:2023年2月23日

一、實驗目的

1、 熟練掌握sql命令

2、 掌握swing圖形使用者介面程式設計。

3、 掌握j**a與資料庫的連線技術。

4、 掌握包中提供各種類,編寫程式實現資料庫資訊的訪問和查詢。

5、 培養獨立查詢資料,並解決問題的能力。

二、實驗任務

1、建立乙個資料庫library,其中含有如下**(字段):

books(isbn,title,authors,publisher,editionnumber,publicationdate,type)

reader(readerid,firstname,lastname,address,phonenumber,limits)

record(recordid,isbn,readerid,borrowingdate,returndate)

administrator(administratorid,password)

student(readerid,password)

使用microsoft sql server 2005資料庫系統,提前設定好books,reader等的資料。

2、使用j**a程式設計實現如下功能:

(1)使用者可通過相應介面,依據圖書的isbn,title,authors,publisher,publicationdate,type的組合條件,查詢資料庫中的符合條件的書籍,程式需將查詢結果以**的方式展示給使用者,使用者可選擇結果排序的依據。

(2)提供使用者相應的方式借書。當使用者選擇借閱某本書籍時,應查詢該書是否已經被借出:如果被借出,則顯示資訊(「該書已被借出,歸還時間***xx」);如該書未被借出,則查閱讀者許可權(是否超出該讀者所能借閱的最大數目書籍),如未超出顯示借書成功,並向資料庫中增加一條借閱記錄,如果超出,則顯示資訊(「已超過您的最大借閱數目)。

(3)提供使用者相應的方式還書。還書成功時,將該次的借閱記錄刪除。

(4)修改資料庫設計,通過相應介面,提供reader、books的增加、刪除、修改功能。

(5)修改資料庫設計,可查詢某使用者的所有借閱記錄。

三、開發工具與平台

1.開發工具:eclipse預設是乙個和jbuilder類似的j**a開發工具,但它不僅僅只是j**a開發工具,只要裝上相應的外掛程式,eclipse也可作為其它語言的開發工具。

如c/c++外掛程式(cdt)。

2.開發平台:jdk1.7

3.資料庫:microsoft sql server 2005

四、設計內容

1.介面設計

(1)登入介面(可選擇學生使用者或者管理員身份)

主要採用gridlayout布局管理。

(2)學生使用者介面(主要通過jtree和卡片布局)

a.卡片布局主要是實現:

當使用者通過jtree選擇不同功能時,實現右邊介面的切換。

b.介面如下:

(3)管理介面的設計

此介面主要採用borderlayout和box布局方式。

2.邏輯設計

● 查詢圖書,學生使用者可以進行簡單查詢和模糊查詢;

● 歸還圖書,學生自動輸入自己的id號,再輸入所要還的書,點選確認歸還;

● 借閱圖書,借閱圖書,可由學生自行操作,當然這有點不符合圖書館的原則。

● 學生使用者管理,原本打算實現使用者資訊的增、刪、改、查,時間關係此功能並沒有實現。

● 圖書管理,包括圖書的增、刪、改、查,時間關係,目前也只做了增加圖書和查詢圖書的功能。

● 借閱管理,主要是學生借閱圖書、歸還圖書和交納罰款的管理。

● 查詢圖書,可以進行簡單查詢和模糊查詢。

● 歸還圖書管理,實現學生的還書管理。

● 新增新使用者,目前只做了學生使用者的新增,管理員得新增還要涉及超級管理員的管理,又時間較短,故也沒有去實現。

3.程式測試

在程式測試中,主要問題在於元件放到有布局管理器的容器中時,其大小的設定有沒有受到影響,比如setalignmentx(alignmentx)在其他布局管理其中不起作用,只在box布局管理器中起作用,網格布局管理器的元件大小(按鈕等)大小也沒辦法自定義大小,介於此,我在寫 addbookframe()和adduserframe()兩個介面時,採用 setlayout(null),使我能夠完全按照自己的意願來設定各元件的大小,同時也發現,其實布局管理器給我們提供的介面管理,也是非常非常好用好看的。

五、附錄

用eclipse編寫的包及**:

一 .管理學生使用者和管理員得公共介面,包括借書介面(登入介面(還書介面(查詢(

public class borrowpanel extends jpanel implements actionlistener ;

private string data = new string[35][35];

private jscrollpane s;

private string readerid;

private boolean islook =false;//是否存在;

private string date;//借閱日期;

private string rdate;//還書日期;

private string dbdriver="";

private string url = "jdbc:sqlserver://localhost:1433;databasename=library";

private static final long serialversionuid = -8959055752439578441l;

public borrowpanel(string readerid)

private void init()

public void actionperformed(actionevent e)

else if( == look){

圖書管理系統

三 可行性分析 1.技術可行性分析 技術上的可行性分析主要分析現有技術條件能否順利完成開發工作,硬體 軟體配置能否滿足開發者的需要,各類技術人員的數量,水平,等。圖書館管理系統的工作主要是方便讀者和圖書管理員處理事務,系統是以c 語言程式設計平台,以sql sever資料庫為後台的應用軟體,達到實現...

圖書管理系統

可行性研究報告 可行性研究報告是為 圖書管理系統 開發的可行性 必要性提供論據,為開發人員進行系統總體規劃設計及具體實施開發工程提供必要的參考資料,在系統開發完成後期為系統的測試 驗收提供幫助。其編寫過程由南京航空航天大學自動化學院學生完成。預期讀者是從事 圖書管理系統 開發的相關人員。本專案名稱為...

圖書管理系統

本書以乙個圖書管理系統為例,從實用角度介紹軟體工程的基本知識和軟體工程技術方法以及軟體工程各階段文件。本節介紹可行性分析報告。可行性分析報告包括 封面 略 目錄 略 可行性分析報告內容 軟體專案管理的目的是有效地利用資源,保證軟體如期交付,如何合理地進行資源配置。專案開發計畫是軟體專案管理當中一項重...