版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、精選優(yōu)質文檔-傾情為你奉上目錄一 項目開發(fā)背景當今時代是飛速發(fā)展的信息時代。在各行各業(yè)中離不開信息處理,這正是計算機被廣泛應用于信息管理系統(tǒng)的環(huán)境。計算機的最大好處在于利用它能夠進行信息管理。使用計算機進行信息控制,不僅提高了工作效率,而且大大的提高了其安全性。尤其對于復雜的信息管理,計算機能夠充分發(fā)揮它的優(yōu)越性。計算機進行信息管理與信息管理系統(tǒng)的開發(fā)密切相關,系統(tǒng)的開發(fā)是系統(tǒng)管理的前提。本系統(tǒng)就是為了管理好圖書館信息而設計的。圖書館作為一種信息資源的集散地,圖書和用戶借閱資料繁多,包含很多的信息數(shù)據(jù)的管理,現(xiàn)今,有很多的圖書館都是初步開始使用,甚至尚未使用計算機進行信息管理。根據(jù)調查得知,他
2、們以前對信息管理的主要方式是基于文本、表格等紙介質的手工處理,對于圖書借閱情況(如借書天數(shù)、超過限定借書時間的天數(shù))的統(tǒng)計和核實等往往采用對借書卡的人工檢查進行,對借閱者的借閱權限、以及借閱天數(shù)等用人工計算、手抄進行。數(shù)據(jù)信息處理工作量大,容易出錯;由于數(shù)據(jù)繁多,容易丟失,且不易查找??偟膩碚f,缺乏系統(tǒng),規(guī)范的信息管理手段。盡管有的圖書館有計算機,但是尚未用于信息管理,沒有發(fā)揮它的效力,資源閑置比較突出,這就是管理信息系統(tǒng)的開發(fā)的基本環(huán)境。數(shù)據(jù)處理手工操作,工作量大,出錯率高,出錯后不易更改。圖書館采取手工方式對圖書借閱情況進行人工管理,由于信息比較多,圖書借閱信息的管理工作混亂而又復雜;一般
3、借閱情況是記錄在借書證上,圖書的數(shù)目和內容記錄在文件中,圖書館的工作人員和管理員也只是當時對它比較清楚,時間一長,如再要進行查詢,就得在眾多的資料中翻閱、查找了,造成查詢費時、費力。如要對很長時間以前的圖書進行更改就更加困難了。基于這此問題,我認為有必要建立一個圖書管理系統(tǒng),使圖書管理工作規(guī)范化,系統(tǒng)化,程序化,避免圖書管理的隨意性,提高信息處理的速度和準確性,能夠及時、準確、有效的查詢和修改圖書情況。二 項目目的及意義我們要實現(xiàn)科學技術現(xiàn)代化,圖書情報工作的現(xiàn)代化是極其重要的,又由于科學和技術的不斷發(fā)展和進步,現(xiàn)代技術是一個動態(tài)的概念.第二次世界大戰(zhàn)以來,以計算機技術為代表的現(xiàn)代技術有了巨大
4、的發(fā)展,而且還在迅速的變化發(fā)展之中,70年代后期,出現(xiàn)圖書情報工作的 “聯(lián)機革命”,使計算機更廣泛地,更有效的應用到各個角落,發(fā)達國家較重視這一領域的發(fā)展,我國尚存在較大的差距。所以我們說,圖書情報工作計算機化是提高我國科學技術水平的一項帶有重大戰(zhàn)略意義的措施,它是圖書情報工作現(xiàn)代化的重要標志。計算機技術是現(xiàn)代技術的一部分,圖書自動化也只是圖書館現(xiàn)代化的一部分,它們之間是部分和整體的關系,但由于計算機技術是信息技術的心臟,現(xiàn)代社會的驕子,信息社會的科技主角,所以在圖書館現(xiàn)代技術中,計算機技術處于核心地位,它對于其他現(xiàn)代化設備起控制,連接和轉換的作用,而圖書館自動化是圖書館現(xiàn)代化的核心和主導部分
5、。圖書情報的計算機管理系統(tǒng)能提高圖書館本身管理水平,能代替工作人員進行圖書情報資料的某些加工處理,把工作人員從繁重的手工勞動,重復勞動中解放出來??傊D書館的計算機自動化管理系統(tǒng),不但可以大大提高圖書館圖書流通率,而且推動了社會文化生活的進步。本論文以圖書館管理信息系統(tǒng)的需求分析及概念設計為切入點,運用理論與實際相結合的方法,構建一個包含讀者信息,書籍信息和借閱信息的圖書館管理系統(tǒng)。圖書館管理系統(tǒng)是典型的信息管理系統(tǒng)(MIS),其開發(fā)主要包括后臺數(shù)據(jù)庫的建立和維護以及前端應用程序的開發(fā)兩個方面。對于前者要求建立起數(shù)據(jù)一致性和完整性強、數(shù)據(jù)安全性好的庫。而對于后者則要求應用程序功能完備,易
6、使用等特點。因此本人結合開放式圖書館的要求,對MySQL數(shù)據(jù)庫、Java程序設計進行了較深入的學習和應用,主要完成對圖書管理系統(tǒng)的需求分析、功能模塊劃分、數(shù)據(jù)庫模式分析,并由此設計了數(shù)據(jù)庫結構和應用程序。希望本文所設計的圖書館管理系統(tǒng)能夠滿足借閱者和圖書館管理人員的需求。三 開發(fā)環(huán)境3.1硬件環(huán)境 PC機一臺3.2軟件環(huán)境My Eclipse開發(fā)環(huán)境;Power Designer;Visio;Oracle 11g四 項目可行性分析4.1 項目背景 名稱:基于Oracle 11g的圖書館管理系統(tǒng)4.2 對現(xiàn)有系統(tǒng)的分析 現(xiàn)在市面上有許多的圖書館管理系統(tǒng)的軟件,但是質量參差不齊,購買花費大,技術不
7、到位,人力花費多,導致系統(tǒng)所有者的支出變多4.3 對所建議技術可行性分析 基于Oracle數(shù)據(jù)庫開發(fā)的圖書館管理系統(tǒng),在原有系統(tǒng)的基礎上,進行了改進,系統(tǒng)運行速度大大提升,并且節(jié)約成本,安全可靠,操作方便,不要要太多的人力。4.4 經濟可行性分析 由于對該系統(tǒng)進行了改進,所以成本費用不高,最主要的是,由于操作簡單易上手,不需要大量的人力來運行,大大節(jié)約了成本4.5 社會因素可行性分析 本系統(tǒng)的研發(fā),完全符合相關規(guī)定,委托方和被委托方簽訂合同,完全合法,并且,自主研發(fā)改進,不會侵犯其他類似軟件的專利權等。4.6 結論意見 通過以上分析,我認為該方案可行。 五 項目需求分析5.1 目的 項目需求分
8、析的目的是明確本系統(tǒng)的詳細需求,供使用單位確定本系統(tǒng)的功能和性能,并作為軟件設計人員的設計依據(jù)和使用單位的驗收依據(jù)。5.2 用戶特點本系統(tǒng)面向的最終用戶是管理員(圖書館管理員和其他管理員),讀者(老師和同學等)。 5.3 系統(tǒng)需求分析 5.3.1 主要功能 1,能夠輸入圖書的綜合情況和進行新書的入庫,現(xiàn)有圖書的信 息修改等。 2,能夠實現(xiàn)對讀者信息的增,刪,查,改。 3,能夠進行圖書的借閱和管理功能。 5.3.2 系統(tǒng)性能要求 1,系統(tǒng)安全,可靠 2,功能齊全 3,操作方便,界面整潔,友好 4,易于維護和擴充 5.3.3 系統(tǒng)功能劃分 圖書館管理系統(tǒng)分為4大功能模塊,分別為“基礎數(shù)據(jù)維護”、“
9、圖書借閱管理”、“新書訂購管理”和“系統(tǒng)維護”。本系統(tǒng)各個部分及其包括的具體功能模塊如下圖所示:圖書借書管理圖書還書管理圖書查詢圖書類別管理圖書信息管理更改密碼用戶管理驗收訂書新書訂購讀者信息管理系統(tǒng)維護新書訂購管理圖書借閱管理基礎數(shù)據(jù)維護圖書館管理系統(tǒng) 5.3.4 數(shù)據(jù)流程圖六 系統(tǒng)模塊設計 6.1數(shù)據(jù)庫設計 通常作為一個管理軟件,它的數(shù)據(jù)部分都是由數(shù)據(jù)庫來存儲和管理的。在本設計中數(shù)據(jù)庫承擔了圖書信息和讀者信息。在如今的數(shù)據(jù)庫產品中,有很多成熟的產品,如Oracle,DB2,SQL Server,MySQL等,圖書館管理系統(tǒng)應用于高校的圖書館中,用戶數(shù)據(jù)以及圖書的信息數(shù)據(jù)并不是很大??紤]到成
10、本,選用了Oracle數(shù)據(jù)庫。下面將詳細的為您介紹本設計中數(shù)據(jù)庫的選擇以及數(shù)據(jù)庫的概念設計等。 6.1.1數(shù)據(jù)庫分析Oracle具有與其他數(shù)據(jù)庫相比具有以下優(yōu)點:1、處理速度快,非常快2、安全級別高。支持快閃以及完美的恢復,即使硬件壞了 也可以恢復到故障發(fā)前的1s3、幾臺數(shù)據(jù)庫做負載數(shù)據(jù)庫,可以做到30s以內故障轉移,4、網格控制,以及 數(shù)據(jù)倉庫方面 也非常強大 6.1.2數(shù)據(jù)庫概念設計 根據(jù)以上對系統(tǒng)所作的需求分析、系統(tǒng)設計,規(guī)劃出本系統(tǒng)中使用的數(shù)據(jù)庫實體分別為圖書信息實體、圖書分類實體、圖書訂購實體、讀者信息實體、圖書借閱信息實體、庫存信息實體。以下為幾個關鍵實體的E-R圖。1. 圖書信息
11、實體圖書信息實體包括圖書編號、圖書類別編號、書名、作者、出版社、價格、出版時間等屬性。其中圖書編號為圖書信息實體的主鍵,圖書類別編號為圖書信息實體的外鍵,與圖書分類實體具有外鍵關系。作者書名類別編號編號圖書出版時間價格出版社圖3-1 圖書信息實體E-R圖2. 讀者信息實體讀者信息實體包括條形碼、姓名、性別、年齡、電話、辦證日期、證件號碼等屬性。其中條形碼作為本實體的唯一標識。 年齡性別 姓名條形碼讀者電話辦證日期證件號碼 圖3-2 讀者信息實體E-R圖3. 圖書借閱信息實體圖書借閱信息實體包括編號、圖書編號、讀者編號、是否歸還、借閱日期、歸還日期等屬性。編號作為圖書借閱信息實體的唯一標識,包括
12、兩個外鍵,分別為圖書編號與讀者編號。編號圖書編號讀者編號圖書借閱借閱日期歸還日期是否歸還圖3-3 圖書借閱信息實體E-R圖4. 圖書訂購實體圖書訂購實體主要包括圖書編號,訂購日期、訂購數(shù)量、是否驗收等屬性。圖書訂購實體以圖書編號與圖書信息實體建立了關系。訂購日期圖書編號訂購數(shù)量圖書訂購操作員折扣是否驗收6.2主窗體設計 在整個系統(tǒng)中,主窗體部分顯示了本系統(tǒng)的所有功能。在主窗體的設計中運用了Swing技術,完成了對菜單欄以及工具欄的設計。管理員通過主窗體可以進行相應的操作,實現(xiàn)系統(tǒng)的功能。普通用戶也可以利用主窗體中的工具欄進行常用的功能操作。下面將詳細的展現(xiàn)主窗體的設計細節(jié)部分。 6.2.1主窗
13、體概述管理員通過“系統(tǒng)登錄”模塊的驗證后,可以登錄到圖書館管理系統(tǒng)的主窗體。系統(tǒng)主窗體主要包括菜單欄、工具欄。用戶在菜單欄中單擊任一菜單項,即可執(zhí)行相應的功能;工具欄為用戶提供了經常使用的功能按鈕。 6.2.2主窗體的實現(xiàn)過程 主窗體的實現(xiàn)過程如下:1 創(chuàng)建Library類,在其構造函數(shù)中設置主窗體相關屬性,如窗體大小、窗體標題等相關屬性,還可以為窗體設置背景圖片,并調用創(chuàng)建菜單欄與工具欄的方法,在主窗體中創(chuàng)建菜單欄與工具欄。關鍵代碼如下:public Library() super();setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOS
14、E);setModalExclusionType(ModalExclusionType.APPLICATION_EXCLUDE);setLocationByPlatform(true);setSize(800, 600);setTitle("圖書館管理系統(tǒng)");JMenuBar menuBar = createMenu(); / 調用創(chuàng)建菜單欄的方法setJMenuBar(menuBar);JToolBar toolBar = createToolBar(); / 調用創(chuàng)建工具欄的方法getContentPane().add(toolBar, BorderLayout.NO
15、RTH);final JLabel label = new JLabel();label.setBounds(0, 0, 0, 0);label.setIcon(null); / 窗體背景DESKTOP_PANE.addComponentListener(new ComponentAdapter() public void componentResized(final ComponentEvent e) Dimension size = e.getComponent().getSize();label.setSize(e.getComponent().getSize();label.setTe
16、xt("<html><img width=" + size.width + " height="+ size.height + " src='"+ this.getClass().getResource("/backImg.jpg")+ "'></html>"););DESKTOP_PANE.add(label,new Integer(Integer.MIN_VALUE);getContentPane().add(DESKTOP_PANE);2
17、 編寫創(chuàng)建菜單欄的方法private JMenuBar createMenu() JMenuBar menuBar = new JMenuBar();JMenu bookOrderMenu = new JMenu(); / 初始化新書訂購管理菜單bookOrderMenu.setIcon(CreatecdIcon.add("xsdgcd.jpg");bookOrderMenu.add(MenuActions.NEWBOOK_ORDER);bookOrderMenu.add(MenuActions.NEWBOOK_CHECK_ACCEPT);JMenu baseMenu =
18、new JMenu();/ 初始化基礎數(shù)據(jù)維護菜單baseMenu.setIcon(CreatecdIcon.add("jcsjcd.jpg");JMenu readerManagerMItem = new JMenu("讀者信息管理");readerManagerMItem.add(MenuActions.READER_ADD);readerManagerMItem.add(MenuActions.READER_MODIFY);JMenu bookTypeManageMItem = new JMenu("圖書類別管理");bookT
19、ypeManageMItem.add(MenuActions.BOOKTYPE_ADD);bookTypeManageMItem.add(MenuActions.BOOKTYPE_MODIFY);JMenu menu = new JMenu("圖書信息管理");menu.add(MenuActions.BOOK_ADD);menu.add(MenuActions.BOOK_MODIFY);baseMenu.add(readerManagerMItem);baseMenu.add(bookTypeManageMItem);baseMenu.add(menu);baseMenu
20、.addSeparator();baseMenu.add(MenuActions.EXIT);JMenu borrowManageMenu = new JMenu(); / 借閱管理borrowManageMenu.setIcon(CreatecdIcon.add("jyglcd.jpg");borrowManageMenu.add(MenuActions.BORROW); / 借閱borrowManageMenu.add(MenuActions.GIVE_BACK); / 歸還borrowManageMenu.add(MenuActions.BOOK_SEARCH); /
21、 搜索JMenu sysManageMenu = new JMenu(); / 系統(tǒng)維護sysManageMenu.setIcon(CreatecdIcon.add("jcwhcd.jpg");JMenu userManageMItem = new JMenu("用戶管理"); / 用戶管理userManageMItem.add(MenuActions.USER_ADD);userManageMItem.add(MenuActions.USER_MODIFY);sysManageMenu.add(MenuActions.MODIFY_PASSWORD);
22、sysManageMenu.add(userManageMItem);menuBar.add(baseMenu); / 添加基礎數(shù)據(jù)維護菜單到菜單欄menuBar.add(bookOrderMenu); / 添加新書訂購管理菜單到菜單欄menuBar.add(borrowManageMenu); / 添加借閱管理菜單到菜單欄menuBar.add(sysManageMenu); / 添加系統(tǒng)維護菜單到菜單欄return menuBar;3 編寫創(chuàng)建工具欄的方法private JToolBar createToolBar() / 創(chuàng)建工具欄的方法JToolBar toolBar = new JT
23、oolBar();toolBar.setFloatable(false);toolBar.setBorder(new BevelBorder(BevelBorder.RAISED);JButton bookAddButton=new JButton(MenuActions.BOOK_ADD);ImageIcon icon = new ImageIcon(Library.class.getResource(“/bookAddtb.jpg”)bookAddButton.setIcon(icon);bookAddButton.setHideActionText(true);bookAddButton
24、.setToolTipText("fjdkjfk");/圖片上提示字toolBar.add(bookAddButton);toolBar.add(MenuActions.BOOK_MODIFY);/在工具欄中添加圖書修改與刪除圖標JButton bookModiAndDelButton=new JButton(MenuActions.BOOK_MODIFY); ImageIconbookmodi icon=CreatecdIcon.add("bookModiAndDeltb.jpg");/創(chuàng)建圖標方法bookModiAndDelButton.setIco
25、n(bookmodiicon);bookModiAndDelButton.setHideActionText(true);toolBar.add(bookModiAndDelButton);JButton bookTypeAddButton=new JButton(MenuActions.BOOKTYPE_ADD);ImageIconbookTypeAddicon=CreatecdIcon.add("bookTypeAddtb.jpg");/創(chuàng)建圖標方法bookTypeAddButton.setIcon(bookTypeAddicon);bookTypeAddButton.
26、setHideActionText(true);toolBar.add(bookTypeAddButton);JButton bookBorrowButton=new JButton(MenuActions.BORROW);ImageIcon bookBorrowicon=CreatecdIcon.add("bookBorrowtb.jpg"); bookBorrowButton.setIcon(bookBorrowicon);bookBorrowButton.setHideActionText(true);toolBar.add(bookBorrowButton);JBu
27、tton bookOrderButton=new JButton(MenuActions.NEWBOOK_ORDER);ImageIcon bookOrdericon=CreatecdIcon.add("bookOrdertb.jpg");/創(chuàng)建圖標方法bookOrderButton.setIcon(bookOrdericon);bookOrderButton.setHideActionText(true);toolBar.add(bookOrderButton);JButton bookCheckButton=newJButton(MenuActions.NEWBOOK_
28、CHECK_ACCEPT);ImageIcon bookCheckicon=CreatecdIcon.add("newbookChecktb.jpg");/創(chuàng)建圖標方法bookCheckButton.setIcon(bookCheckicon);bookCheckButton.setHideActionText(true);toolBar.add(bookCheckButton);JButton readerAddButton=new JButton(MenuActions.READER_ADD);ImageIcon readerAddicon=CreatecdIcon.a
29、dd("readerAddtb.jpg");/創(chuàng)建圖標方法readerAddButton.setIcon(readerAddicon);readerAddButton.setHideActionText(true);toolBar.add(readerAddButton);JButton readerModiAndDelButton=new JButton(MenuActions.READER_MODIFY);ImageIcon readerModiAndDelicon=CreatecdIcon.add("readerModiAndDeltb.jpg")
30、;/創(chuàng)建圖標方法readerModiAndDelButton.setIcon(readerModiAndDelicon);readerModiAndDelButton.setHideActionText(true);toolBar.add(readerModiAndDelButton);JButton ExitButton=new JButton(MenuActions.EXIT);ImageIcon Exiticon=CreatecdIcon.add("exittb.jpg");/創(chuàng)建圖標方法ExitButton.setIcon(Exiticon);ExitButton.
31、setHideActionText(true);toolBar.add(ExitButton);return toolBar;4 經過程序運行后得到下圖: 6.3登陸模塊設計一個完整的系統(tǒng)需要一定的權限才能進行相應的操作,圖書館管理系統(tǒng)也不例外。無論是管理員還是用戶都必須首先進入登陸界面,只有輸入正確的賬號和密碼才能進入到主窗體進行相應的操作,否則是不能進行功能操作的。因此登陸模塊在整個系統(tǒng)中占據(jù)了很重要的地位。 6.3.1登錄模塊概述登錄模塊是圖書館管理系統(tǒng)的入口,在運行本系統(tǒng)后,首先進入的便是登錄窗體。在該窗體中,系統(tǒng)管理員可以通過輸入正確的管理員名稱與密碼登錄到系統(tǒng);當沒有輸入管理員名稱
32、或密碼時,系統(tǒng)將會彈出相應的提示信息。 6.3.2登錄模塊的實現(xiàn)過程開發(fā)登錄模塊的具體步驟如下:1) 首先在BookLoginIFrame類構造函數(shù)中設計登錄窗體的整體布局,包括添加窗體關閉按鈕、最小化按鈕、設置窗體大小等屬性。關鍵代碼如下:public BookLoginIFrame() super();final BorderLayout borderLayout = new BorderLayout();setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);borderLayout.setVgap(10);getContentPane().setL
33、ayout(borderLayout);setTitle("圖書館管理系統(tǒng)登錄");setBounds(100, 100, 285, 194);final JPanel panel = new JPanel();panel.setLayout(new BorderLayout();panel.setBorder(new EmptyBorder(0, 0, 0, 0);getContentPane().add(panel);final JPanel panel_2 = new JPanel();final GridLayout gridLayout = new GridLay
34、out(0, 2);gridLayout.setHgap(5);gridLayout.setVgap(20);panel_2.setLayout(gridLayout);panel.add(panel_2);final JLabel label = new JLabel();label.setHorizontalAlignment(SwingConstants.CENTER);label.setPreferredSize(new Dimension(0, 0);label.setMinimumSize(new Dimension(0, 0);panel_2.add(label);label.s
35、etText("用 戶 名:");username = new JTextField(20);username.setPreferredSize(new Dimension(0, 0);panel_2.add(username);final JLabel label_1 = new JLabel();label_1.setHorizontalAlignment(SwingConstants.CENTER);panel_2.add(label_1);label_1.setText("密 碼:");password = new JPasswordField(
36、20);password.setDocument(new MyDocument(6);password.setEchoChar('*');/設置密碼框的回顯字符password.addKeyListener(new KeyAdapter() public void keyPressed(final KeyEvent e) if (e.getKeyCode() = 10)login.doClick(););panel_2.add(password);final JPanel panel_1 = new JPanel();panel.add(panel_1, BorderLayou
37、t.SOUTH);login=new JButton();login.addActionListener(new BookLoginAction();login.setText("登錄");panel_1.add(login);reset=new JButton();reset.addActionListener(new BookResetAction();reset.setText("重置");panel_1.add(reset);final JLabel tupianLabel = new JLabel();ImageIcon loginIcon=C
38、reatecdIcon.add("login.jpg");tupianLabel.setIcon(loginIcon);tupianLabel.setOpaque(true);tupianLabel.setBackground(Color.GREEN);tupianLabel.setPreferredSize(new Dimension(260, 60);panel.add(tupianLabel, BorderLayout.NORTH);setVisible(true);setResizable(false);程序運行圖如下:圖5-1 圖書館管理系統(tǒng)登錄運行圖2) 為了方
39、便在登錄驗證時取值傳遞,需要創(chuàng)建一個對應于tb_operator表字段的JavaBean。這個類除了以數(shù)據(jù)表字段命名的成員變量之外,還創(chuàng)建了與成員變量相對應的setXXX()getXXX()方法。關鍵代碼如下:public class Operater private String id;private String name;private String grade;private String password;public String getGrade() return grade;public void setGrade(String grade) this.grade = grad
40、e;public String getId() return id;public void setId(String id) this.id = id;public String getName() return name;public void setName(String name) = name;public String getPassword() return password;public void setPassword(String password) this.password = password;3) 分別為“登錄”按鈕與“重置”按鈕設置監(jiān)聽事件。cl
41、ass BookLoginAction implements ActionListener public void actionPerformed(final ActionEvent e) user = Dao.check(username.getText(), password.getText();if (user.getName() != null) try Library frame = new Library();frame.setVisible(true);BookLoginIFrame.this.setVisible(false); catch (Exception ex) ex.
42、printStackTrace(); else JOptionPane.showMessageDialog(null, "只有管理員才可以登錄!");username.setText("");password.setText("");4) 在Dao類中創(chuàng)建登錄驗證方法,在此方法中查詢文本框中輸入的字符串是否與操作員數(shù)據(jù)表中的數(shù)據(jù)相匹配,并是否為管理員登錄,以上條件都滿足,登錄驗證才能成功。關鍵代碼如下:public static Operater check(String name, String password) int i =
43、0;Operater operater=new Operater();String sql = "select * from tb_operator where name='" + name+ "' and password='" + password + "'and admin=1"ResultSet rs = Dao.executeQuery(sql);try while (rs.next() String names = rs.getString(1);operater.setId(rs.getS
44、tring("id");operater.setName(rs.getString("name");operater.setGrade(rs.getString("admin");operater.setPassword(rs.getString("password");if (names != null) i = 1; catch (Exception e) e.printStackTrace();Dao.close();return operater;6.4圖書管理模塊設計 圖書管理系統(tǒng)的最主要功能當然要進行圖
45、書的管理,其中包括圖書的添加,圖書信息的修改,圖書的借還和圖書的查詢。圖書管理模塊是圖書管理系統(tǒng)的核心模塊。它包含了系統(tǒng)中最重要的功能。管理員和用戶平時使用的大部分功能都將在這一模塊中實現(xiàn)。 6.4.1圖書信息管理模塊概述圖書信息管理模塊主要包括圖書添加、圖書信息修改、圖書借還、圖書查詢等功能。在圖書添加窗體中,管理員可以錄入圖書相關信息,進入圖書信息修改窗體后,首先在表格中顯示所有圖書的相關信息,管理員可以選擇表格中需要修改的某一行數(shù)據(jù),這時在窗體下方的文本框中將顯示相應的內容。圖書借閱模塊主要用于管理讀者借閱圖書的信息。管理員輸入讀者條形碼、圖書條形碼后,在讀者相關信息文本框以及圖書相關信
46、息文本框中將相應地顯示此讀者和書籍的相關信息。 6.4.2圖書信息管理模塊實現(xiàn)過程 圖書添加模塊的開發(fā)步驟如下:首先創(chuàng)建圖書信息添加窗體,然后在圖書信息添加窗體中添加按鈕監(jiān)聽事件,關鍵代碼如下:public BookAddIFrame() super();final BorderLayout borderLayout = new BorderLayout();getContentPane().setLayout(borderLayout);setIconifiable(true);/ 設置窗體可最小化setClosable(true);/ 設置窗體可關閉setTitle("圖書信息添
47、加");/ 設置窗體標題setBounds(100, 100, 396, 260);final JPanel panel = new JPanel();panel.setBorder(new EmptyBorder(5, 10, 5, 10);final GridLayout gridLayout = new GridLayout(0, 4);gridLayout.setVgap(5);gridLayout.setHgap(5);panel.setLayout(gridLayout);getContentPane().add(panel);final JLabel label_2 =
48、 new JLabel();label_2.setText("圖書編號:");panel.add(label_2);ISBN = new JTextField("請輸入13位書號",13);ISBN.setDocument(new MyDocument(13); /設置書號文本框最大輸入值為13ISBN.setColumns(13);ISBN.addKeyListener(new ISBNkeyListener();ISBN.addFocusListener(new ISBNFocusListener();panel.add(ISBN);final JL
49、abel label = new JLabel();label.setHorizontalAlignment(SwingConstants.CENTER);label.setText("類別:");panel.add(label);bookType = new JComboBox();bookTypeModel= (DefaultComboBoxModel)bookType.getModel();/從數(shù)據(jù)庫中取出圖書類別List list=Dao.selectBookCategory();for(int i=0;i<list.size();i+)BookType bo
50、oktype=(BookType)list.get(i);Item item=new Item();item.setId(String)booktype.getId();item.setName(String)booktype.getTypeName();bookTypeModel.addElement(item);panel.add(bookType);final JLabel label_1 = new JLabel();label_1.setText("書名:");panel.add(label_1);bookName = new JTextField();panel
51、.add(bookName);final JLabel label_3 = new JLabel();label_3.setHorizontalAlignment(SwingConstants.CENTER);label_3.setText("作者:");panel.add(label_3);writer = new JTextField();writer.setDocument(new MyDocument(10);panel.add(writer);final JLabel label_2_1 = new JLabel();label_2_1.setText("
52、;出版社:");panel.add(label_2_1);publisher = new JComboBox();Stringarray=new String"*出版社","*信息出版社","*大型出版社","*小型出版社"publisher.setModel(new DefaultComboBoxModel(array);panel.add(publisher);final JLabel label_4 = new JLabel();label_4.setHorizontalAlignment(Swin
53、gConstants.CENTER);label_4.setText("譯者:");panel.add(label_4);translator = new JTextField();translator.setDocument(new MyDocument(10);panel.add(translator);final JLabel label_1_1 = new JLabel();label_1_1.setText("出版日期:");panel.add(label_1_1);SimpleDateFormat myfmt=new SimpleDateFo
54、rmat("yyyy-MM-dd");pubDate= new JFormattedTextField(myfmt.getDateInstance();pubDate.setValue(new java.util.Date();panel.add(pubDate);final JLabel label_3_1 = new JLabel();label_3_1.setHorizontalAlignment(SwingConstants.CENTER);label_3_1.setText("單價:");panel.add(label_3_1);price= new JTextField(); price.setDocument(new MyDocument(5);price.addKeyListener(new NumberListener();panel.add(price
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度出口企業(yè)出口貨物報關單據(jù)與憑證管理合同3篇
- 二零二五年餐飲項目合伙經營合同范本3篇
- 2025年度智能化工廠租賃合同涉及土地使用權及配套設施4篇
- 二零二四年臨時工勞動保障與勞動法實施合同3篇
- 專屬2024版企業(yè)人力外包協(xié)議樣本版B版
- 2024鋁合金門窗生產與安裝一體化工程合同3篇
- 2025年度企業(yè)級“師帶徒”人才孵化項目合同3篇
- 專業(yè)勞務派遣協(xié)議樣本2024版B版
- 街道黨工委知識培訓課件
- 2025年度商務辦公空間租賃安全合同文本4篇
- 老年人視覺障礙護理
- 《腦梗塞的健康教育》課件
- 《請柬及邀請函》課件
- 中小銀行上云趨勢研究分析報告
- 遼寧省普通高中2024-2025學年高一上學期12月聯(lián)合考試語文試題(含答案)
- 青海原子城的課程設計
- 常州大學《新媒體文案創(chuàng)作與傳播》2023-2024學年第一學期期末試卷
- 麻醉蘇醒期躁動患者護理
- 英語雅思8000詞匯表
- 小學好詞好句好段摘抄(8篇)
- JT-T-1059.1-2016交通一卡通移動支付技術規(guī)范第1部分:總則
評論
0/150
提交評論