




版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、 目錄第1章 本設(shè)計(jì)所要達(dá)到的目的和要求 1.1 設(shè)計(jì)目的 1.2 設(shè)計(jì)要求第2章 設(shè)計(jì)內(nèi)容第3 章 開(kāi)發(fā)和運(yùn)行環(huán)境介紹第4章 需求分析1、 本設(shè)計(jì)所要達(dá)到的目的和要求 1.1 設(shè)計(jì)目的 管理信息系統(tǒng)(MIS)的應(yīng)用已深入到社會(huì)的各行各業(yè),它是信息、軟件與科學(xué)管理相結(jié)合的產(chǎn)物。MIS的開(kāi)發(fā)過(guò)程不僅是一個(gè)編寫(xiě)應(yīng)用程序的過(guò)程,而且是一個(gè)以軟件工程的思想為指導(dǎo),從可行性研究開(kāi)始,經(jīng)過(guò)系統(tǒng)分析、系統(tǒng)設(shè)計(jì)、系統(tǒng)實(shí)施到等主要階段的規(guī)范開(kāi)發(fā)過(guò)程。本題目實(shí)現(xiàn)的是JAVA系統(tǒng),我們選擇的是圖書(shū)館管理系統(tǒng),不同角色的用戶(hù)登錄,用戶(hù)信息的管理包括密碼管理,及用戶(hù)借還書(shū),用戶(hù)對(duì)圖書(shū)信息及本人借還情況的查詢(xún),超級(jí)管理員
2、對(duì)圖書(shū)信息的增刪查改,用戶(hù)信息的增刪查改及借還情況總的查詢(xún)。1.2 設(shè)計(jì)要求1、主題明確,軟體開(kāi)發(fā)要有創(chuàng)新性,能體現(xiàn)SQL的存儲(chǔ)過(guò)程、觸發(fā)器、游標(biāo)技術(shù)等; 2、用高級(jí)語(yǔ)言結(jié)合SQL Server數(shù)據(jù)庫(kù)進(jìn)行開(kāi)發(fā); 3、寫(xiě)出數(shù)據(jù)庫(kù)關(guān)系模式及相應(yīng)的數(shù)據(jù)庫(kù)表關(guān)系圖; 4、繪制成績(jī)MIS相應(yīng)的系統(tǒng)流程圖、E-R圖等; 5、完成成績(jī)MIS登陸界面、主界面、圖書(shū)信息錄入、圖書(shū)信息查詢(xún)和其各項(xiàng)設(shè)計(jì)與操作。 2、設(shè)計(jì)內(nèi)容我們?cè)O(shè)計(jì)的圖書(shū)館管理系統(tǒng)主要用于對(duì)圖書(shū)館日常工作的管理,主要任務(wù)是用計(jì)算機(jī)對(duì)讀者、圖書(shū)等各種信息進(jìn)行日常管理,如查詢(xún)、修改、增加、刪除、圖書(shū)借閱和歸還的管理等。本系統(tǒng)實(shí)現(xiàn)了圖書(shū)館的信息化管理,完
3、成了圖書(shū)館管理系統(tǒng)的基本功能。該系統(tǒng)主要包括讀者用戶(hù)登錄系統(tǒng)、管理員用戶(hù)登入系統(tǒng)、圖書(shū)管理系統(tǒng)、圖書(shū)借閱、圖書(shū)和用戶(hù)信息查詢(xún)子系統(tǒng)四個(gè)部分,各部分主要功能如下:讀者用戶(hù)登錄子系統(tǒng):用于數(shù)據(jù)庫(kù)的連接,主界面的設(shè)計(jì)和讀者身份用戶(hù)的登錄管理。管理員用戶(hù)登入系統(tǒng):用于管理員用戶(hù)的管理,如圖書(shū)添加、圖書(shū)信息修改。圖書(shū)管理系統(tǒng):用于圖書(shū)信息的管理,如新書(shū)入庫(kù)、圖書(shū)信息修改、圖書(shū)信息刪除。圖書(shū)借閱系統(tǒng):用于用戶(hù)借閱和歸還圖書(shū)。圖書(shū)和用戶(hù)信息查詢(xún):圖書(shū)和用戶(hù)信息的查詢(xún)。留言系統(tǒng):用于留言管理。3、開(kāi)發(fā)和運(yùn)行環(huán)境介紹開(kāi)發(fā)語(yǔ)言:前臺(tái)開(kāi)發(fā)語(yǔ)言為java,后臺(tái)數(shù)據(jù)庫(kù)為SQL server2000運(yùn)行環(huán)境:eclips
4、eEclipse是著名的跨平臺(tái)的自有(IDE)。最初主要用來(lái)Java語(yǔ)言開(kāi)發(fā),但是目前亦有人通過(guò)插件使其作為其他計(jì)算機(jī)語(yǔ)言比如C+和Python的開(kāi)發(fā)工具。Eclipse的本身只是一個(gè)框架平臺(tái),但是眾多插件的支持使得Eclipse擁有其他功能相對(duì)固定的IDE軟件很難具有的靈活性。許多軟件開(kāi)發(fā)商以Eclipse為框架開(kāi)發(fā)自己的IDE。4、需求分析4.1系統(tǒng)需求描述實(shí)現(xiàn)管理員對(duì)用戶(hù)的增刪改查,對(duì)圖書(shū)信息增刪查改、圖書(shū)借閱信息的修改以,實(shí)現(xiàn)用戶(hù)對(duì)圖書(shū)的查找、借閱、續(xù)借、歸還以及修改密碼。4.2系統(tǒng)功能結(jié)構(gòu)圖圖書(shū)管理系統(tǒng)用戶(hù)登錄用戶(hù)信息管理圖書(shū)信息管理借閱信息管理管理員登錄工作人員登錄用戶(hù)登錄用戶(hù)信息
5、增加 用戶(hù)信息刪除用戶(hù)信息查詢(xún)用戶(hù)信息修改圖書(shū)信息增加圖書(shū)信息刪除圖書(shū)信息修改圖書(shū)信息查詢(xún)用戶(hù)借書(shū)歸還圖書(shū)用戶(hù)續(xù)借借閱信息查詢(xún)圖 1 圖書(shū)管理系統(tǒng)系統(tǒng)流程圖4.3 系統(tǒng)E-R圖 用戶(hù)用戶(hù)ID權(quán)限用戶(hù)名已借書(shū)數(shù)量密碼借書(shū)上限圖 2 用戶(hù)實(shí)體圖備注圖書(shū)剩余數(shù)量作者圖書(shū)ID圖書(shū)出版社圖書(shū)總數(shù)量?jī)r(jià)格出版日期書(shū)籍名稱(chēng)圖3 書(shū)籍實(shí)體圖1畢業(yè)設(shè)計(jì)選題系統(tǒng)N用戶(hù)借閱還書(shū)日期借書(shū)日期圖書(shū)圖 4 實(shí)體屬性圖4.5數(shù)據(jù)庫(kù)表結(jié)構(gòu)表1 圖書(shū)信息表字段名稱(chēng)字段類(lèi)型長(zhǎng)度是否為空備注圖書(shū)編號(hào)數(shù)字4否主鍵書(shū)名數(shù)字4出版社文本50編著者文本50出版日期時(shí)間4單價(jià)文本50庫(kù)存數(shù)量數(shù)字4否出版書(shū)號(hào)文本50表2 用戶(hù)借閱表字段名稱(chēng)數(shù)據(jù)
6、類(lèi)型長(zhǎng)度是否為空備注讀者號(hào)數(shù)字4否主鍵姓名數(shù)字4否主鍵借書(shū)日期時(shí)間8否還書(shū)日期時(shí)間8借閱圖書(shū)編號(hào)文本50否表3用戶(hù)信息表字段名稱(chēng)字段類(lèi)型長(zhǎng)度是否為空備注用戶(hù)編號(hào)數(shù)字4否主鍵用戶(hù)名文本50否用戶(hù)密碼文本50否身份文本50否5.系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)5.1 模塊功能描述在整個(gè)圖書(shū)管理系統(tǒng)中讀者用戶(hù)登錄系統(tǒng)的設(shè)計(jì),主要包括如下功能:連接遠(yuǎn)程數(shù)據(jù)庫(kù):首先建立連接,然后配置數(shù)據(jù)源。整個(gè)界面的設(shè)計(jì):主框架,點(diǎn)擊按鈕分別觸發(fā)事件。用戶(hù)登錄:管理員,圖書(shū)館工作人員,普通用戶(hù)分別實(shí)現(xiàn)進(jìn)入自己的界面。在整個(gè)圖書(shū)管理系統(tǒng)中管理員用戶(hù)管理子系統(tǒng)的設(shè)計(jì),主要包括如下功能:用戶(hù)添加:用于添加用戶(hù)信息。用戶(hù)信息修改:管理員可以修改
7、用戶(hù)所有信息,用戶(hù)可以修改自己的密碼。用戶(hù)刪除:用于刪除用戶(hù)信息。包括按用戶(hù)id和密碼刪除。在整個(gè)圖書(shū)館管理系統(tǒng)中圖書(shū)管理子系統(tǒng)的設(shè)計(jì),主要包括如下功能:圖書(shū)添加:用于添加圖書(shū)信息。圖書(shū)信息修改:管理員可以修改圖書(shū)所有信息。圖書(shū)刪除:用于刪除圖書(shū)信息。包括按圖書(shū)id刪除。在整個(gè)圖書(shū)館管理系統(tǒng)中圖書(shū)借閱管理子系統(tǒng)的設(shè)計(jì),主要包括如下功能:借閱圖書(shū):用戶(hù)借書(shū)。續(xù)借:通過(guò)改變歸還日期來(lái)續(xù)借。借閱信息顯示:管理員和工作人員可以查看所有用戶(hù)借閱信息,普通用戶(hù)只可以查看自己的借閱信息。5.2 軟件實(shí)現(xiàn)讀者用戶(hù)登錄系統(tǒng):package hehe;import java.awt.Frame;import ja
8、va.awt.Menu;import java.awt.MenuBar;import java.awt.MenuItem;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.awt.event.WindowAdapter;import java.awt.event.WindowEvent;SuppressWarnings("serial")public class 菜單1 extends Frame implements ActionListener/TextA
9、rea ta; /文本區(qū)MenuBar mb; /MenuBar 類(lèi)封裝綁定到框架的菜單欄的Menu mnLog,mnJy,mnFy,mnLy; /從菜單欄部署的下拉式菜單組件MenuItem mizhuce,milog,miExit,miyhzh,miyhxx; /菜單中的所有項(xiàng)必須屬于類(lèi) MenuItem 或其子類(lèi)之一MenuItem mifyshow,mifydelete,mifyinsert,mifymodify,milyshow,miyshow,mijyshow,mijyinsert,mijymodify;public 菜單1()super("圖書(shū)管理系統(tǒng)");
10、/調(diào)用父類(lèi)構(gòu)造方法/ta = new TextArea("",20,20); /新建文本區(qū),第一個(gè)參數(shù)是默認(rèn)文本,第二個(gè)參數(shù)是行數(shù),第三個(gè)是列數(shù)/* * BorderLayout邊框布局 * 添加文本區(qū)到Frame,BorderLayout.CENTER是居中位置 * */add(ta,BorderLayout.CENTER); mb = new MenuBar(); /創(chuàng)建菜單欄對(duì)象/* * 創(chuàng)建菜單,指定菜單名 * */mnLog= new Menu("退出"); mnFy= new Menu("讀者信息管理");mnJy= ne
11、w Menu("借閱管理");mnLy= new Menu("意見(jiàn)簿留言"); /* jLabel=new JLabel("歡迎進(jìn)入設(shè)備管理系統(tǒng)"); jLabel.setHorizontalAlignment(JLabel.CENTER); jLabel.setForeground(Color.red);*/* * 創(chuàng)建子菜單,并指定名稱(chēng) * */miExit=new MenuItem("退出");miExit.addActionListener(this); /為退出菜單添加監(jiān)聽(tīng)/* * 添加上面創(chuàng)建的子菜單到
12、文件菜單下 * */ mnLog.add(miExit);/將一個(gè)分隔線(xiàn)或連字符添加到菜單的當(dāng)前位置 /* * 添加miBinary、miFont兩個(gè)子菜單到mnFormat(格式)下 * */ mifyshow=new MenuItem("查看");mifyshow.addActionListener(this);mnFy.add(mifyshow);milyshow=new MenuItem("留言");mnLy.add(milyshow);milyshow.addActionListener(this);miyshow=new MenuItem(&
13、quot;查看");mnLy.add(miyshow);miyshow.addActionListener(this);mijyinsert=new MenuItem("借書(shū)");mijyinsert.addActionListener(this);mnJy.add(mijyinsert);/* * 將文件、編輯、格式、幫助添加到菜單欄 * */mb.add(mnLog);mb.add(mnJy);mb.add(mnFy);mb.add(mnLy);setMenuBar(mb); /添加菜單欄到Frame/* * 關(guān)閉窗口時(shí),關(guān)閉運(yùn)行成語(yǔ) * */addWindo
14、wListener(new WindowAdapter()public void windowClosing(WindowEvent e)System.exit(0););public static void main(String args)菜單1 tm=new 菜單1();tm.setSize(700,500); /設(shè)置窗體的寬、高tm.setLocation(300,100); /將組件移到新位置Component類(lèi)方法tm.setVisible(true); /設(shè)置顯示窗體,true為顯示,false為隱藏/* * 監(jiān)聽(tīng)事件,實(shí)現(xiàn)ActionListener接口的actionPerfo
15、rmed方法 */public void actionPerformed(ActionEvent e) if(e.getSource()=miExit)System.exit(0); /停止運(yùn)行程序 if(e.getSource()=mifyshow) 讀者信息查詢(xún) wo= new 讀者信息查詢(xún)("查看"); this.setVisible(true); if(e.getSource()=mijyinsert) 讀者借閱信息插入 wo= new 讀者借閱信息插入("借書(shū)"); this.setVisible(true); if(e.getSource()
16、=milyshow) 意見(jiàn)留言 wo= new 意見(jiàn)留言("留言"); this.setVisible(true); if(e.getSource()=miyshow) 留言查看 wo= new 留言查看("查看"); this.setVisible(true);管理員用戶(hù)登錄:package hehe;import java.awt.Frame;import java.awt.Menu;import java.awt.MenuBar;import java.awt.MenuItem;import java.awt.event.ActionEvent;i
17、mport java.awt.event.ActionListener;import java.awt.event.WindowAdapter;import java.awt.event.WindowEvent;SuppressWarnings("serial")public class 菜單1 extends Frame implements ActionListener/TextArea ta; /文本區(qū)MenuBar mb; /MenuBar 類(lèi)封裝綁定到框架的菜單欄的Menu mnLog,mnJy,mnFy,mnLy; /從菜單欄部署的下拉式菜單組件MenuItem
18、 mizhuce,milog,miExit,miyhzh,miyhxx; /菜單中的所有項(xiàng)必須屬于類(lèi) MenuItem 或其子類(lèi)之一MenuItem mifyshow,mifydelete,mifyinsert,mifymodify,milyshow,miyshow,mijyshow,mijyinsert,mijymodify;public 菜單1()super("圖書(shū)管理系統(tǒng)"); /調(diào)用父類(lèi)構(gòu)造方法/ta = new TextArea("",20,20); /新建文本區(qū),第一個(gè)參數(shù)是默認(rèn)文本,第二個(gè)參數(shù)是行數(shù),第三個(gè)是列數(shù)/* * BorderLay
19、out邊框布局 * 添加文本區(qū)到Frame,BorderLayout.CENTER是居中位置 * */add(ta,BorderLayout.CENTER); mb = new MenuBar(); /創(chuàng)建菜單欄對(duì)象/* * 創(chuàng)建菜單,指定菜單名 * */mnLog= new Menu("退出"); mnFy= new Menu("讀者信息管理");mnJy= new Menu("借閱管理");mnLy= new Menu("意見(jiàn)簿留言"); /* jLabel=new JLabel("歡迎進(jìn)入設(shè)備管理系
20、統(tǒng)"); jLabel.setHorizontalAlignment(JLabel.CENTER); jLabel.setForeground(Color.red);*/* * 創(chuàng)建子菜單,并指定名稱(chēng) * */miExit=new MenuItem("退出");miExit.addActionListener(this); /為退出菜單添加監(jiān)聽(tīng)/* * 添加上面創(chuàng)建的子菜單到文件菜單下 * */ mnLog.add(miExit);/將一個(gè)分隔線(xiàn)或連字符添加到菜單的當(dāng)前位置 /* * 添加miBinary、miFont兩個(gè)子菜單到mnFormat(格式)下 * *
21、/ mifyshow=new MenuItem("查看");mifyshow.addActionListener(this);mnFy.add(mifyshow);milyshow=new MenuItem("留言");mnLy.add(milyshow);milyshow.addActionListener(this);miyshow=new MenuItem("查看");mnLy.add(miyshow);miyshow.addActionListener(this);mijyinsert=new MenuItem("借
22、書(shū)");mijyinsert.addActionListener(this);mnJy.add(mijyinsert);/* * 將文件、編輯、格式、幫助添加到菜單欄 * */mb.add(mnLog);mb.add(mnJy);mb.add(mnFy);mb.add(mnLy);setMenuBar(mb); /添加菜單欄到Frame/* * 關(guān)閉窗口時(shí),關(guān)閉運(yùn)行成語(yǔ) * */addWindowListener(new WindowAdapter()public void windowClosing(WindowEvent e)System.exit(0););public sta
23、tic void main(String args)菜單1 tm=new 菜單1();tm.setSize(700,500); /設(shè)置窗體的寬、高tm.setLocation(300,100); /將組件移到新位置Component類(lèi)方法tm.setVisible(true); /設(shè)置顯示窗體,true為顯示,false為隱藏/* * 監(jiān)聽(tīng)事件,實(shí)現(xiàn)ActionListener接口的actionPerformed方法 */public void actionPerformed(ActionEvent e) if(e.getSource()=miExit)System.exit(0); /停止運(yùn)
24、行程序 if(e.getSource()=mifyshow) 讀者信息查詢(xún) wo= new 讀者信息查詢(xún)("查看"); this.setVisible(true); if(e.getSource()=mijyinsert) 讀者借閱信息插入 wo= new 讀者借閱信息插入("借書(shū)"); this.setVisible(true); if(e.getSource()=milyshow) 意見(jiàn)留言 wo= new 意見(jiàn)留言("留言"); this.setVisible(true); if(e.getSource()=miyshow) 留
25、言查看 wo= new 留言查看("查看"); this.setVisible(true);登入界面系統(tǒng):package hehe;import java.awt.Color; import java.awt.Container; import java.awt.Dimension; import java.awt.Font; import java.awt.Toolkit; import java.awt.Image; import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import
26、 java.sql.Connection;import java.sql.DriverManager;import java.sql.ResultSet;import java.sql.SQLException;import java.sql.Statement;import javax.swing.ButtonGroup;import javax.swing.ImageIcon; import javax.swing.JButton; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JOptio
27、nPane;import javax.swing.JPasswordField; import javax.swing.JRadioButton;import javax.swing.JTextField; public class 登陸界面 implements ActionListener public JFrame jf= new JFrame("圖書(shū)管理系統(tǒng)系統(tǒng)"); public Container con = jf.getContentPane(); public Toolkit toolkit = Toolkit.getDefaultToolkit(); /獲
28、取工具包public Dimension sc = toolkit.getScreenSize(); /getScreenSize(),最后的這個(gè)方法返回一個(gè)Dimension類(lèi)型的對(duì)象.是返回當(dāng)先分辨率的.Object a,b; public JRadioButton rb1 = new JRadioButton("讀者"); public JRadioButton rb2 = new JRadioButton("管理員"); public ButtonGroup group = new ButtonGroup (); public JLabel yo
29、ng_hu = new JLabel("用戶(hù)名"); public JLabel mi_ma = new JLabel("密碼"); public JTextField textName = new JTextField(); public JPasswordField textPs = new JPasswordField(); public JButton deng_ru = new JButton("登陸"); public JButton qu_xiao = new JButton("取消"); publi
30、c Font font1 = new Font("宋體",1,14); public Font font2 = new Font("宋體",0,12); public 登陸界面() /con.setLayout(null); /jf.setSize(sc.width/1,sc.height/2); /大小/*jf.setLocation(sc.width/5,sc.height/1010); */ /* public void setLocation(int x, int y)將組件移到新位置。通過(guò)此組件父級(jí)坐標(biāo)空間中的 x 和 y 參數(shù)來(lái)指定新位置的左
31、上角。 參數(shù): x - 父級(jí)坐標(biāo)空間中新位置左上角的 x 坐標(biāo)y - 父級(jí)坐標(biāo)空間中新位置左上角的 y 坐標(biāo)*/con.setLayout(null); group.add(rb1); group.add(rb2); deng_ru.addActionListener(this);qu_xiao.addActionListener(this);rb1.addActionListener(this); rb2.addActionListener(this); jf.setSize(/*sc.width/3*/500,sc.height/2); jf.setLocation(sc.width/3,
32、sc.height/4); jf.setResizable(false); yong_hu.setLocation(80,30); /位置yong_hu.setSize(100, 100); /大小yong_hu.setFont(font1); /設(shè)置字體yong_hu.setForeground(Color.BLUE );/設(shè)置顏色 rb1.setLocation(80,180); /位置rb1.setSize(65,20); /大小rb2.setLocation(250,180); /位置rb2.setSize(80,20); /大小mi_ma.setLocation(80,90); mi
33、_ma.setSize(100,100); mi_ma.setForeground(Color.BLUE ) ; mi_ma.setFont(font1); textName.setSize(140, 20); textName.setLocation(170, 70) ; textPs.setSize(140, 20); textPs.setLocation(170, 130) ; /textPs.setEchoChar('*'); /返回deng_ru.setSize(90,25); deng_ru.setLocation(80,220 ) ;deng_ru.setFont
34、(font2);qu_xiao.setSize(90,25) ; qu_xiao.setLocation(250, 220) ;qu_xiao.setFont(font2) ; con.add(rb1) ; con.add(rb2) ; con.add(yong_hu) ; con.add(mi_ma) ; con.add(textName); con.add(textPs); con.add(deng_ru); con.add(qu_xiao); con.setBackground(Color.WHITE); jf.setResizable(false); jf.setVisible(tru
35、e) ; jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); public void actionPerformed(ActionEvent e) Object dx;Connection con;Statement sql;ResultSet rs; if(group.getSelection()=rb2.getModel() if(e.getSource()=deng_ru)a=textName.getText(); charc=textPs.getPassword(); b= new String(c); try Class.forNam
36、e("sun.jdbc.odbc.JdbcOdbcDriver");catch(ClassNotFoundException ee)System.out.println(""+e);trycon=DriverManager.getConnection("jdbc:odbc:hehe","",""); sql=con.createStatement(); dx=new Object1; rs=sql.executeQuery("select * from 管理員信息表 where 用戶(hù)名
37、='"+a+"'"); boolean min=rs.next(); if(!min)/ System.out.print("用戶(hù)名錯(cuò)誤"); /JOptionPane.showMessageDialog(this,"用戶(hù)名或密碼錯(cuò)誤"); JOptionPane.showMessageDialog(null,"用戶(hù)名或密碼錯(cuò)誤"); if(min) dx=rs.getString(2); / (String) dx).trim();/ (String) b).trim(); if(!dx
38、.equals(b) JOptionPane.showMessageDialog(null,"用戶(hù)名或密碼錯(cuò)誤"); if(dx.equals(b) JOptionPane.showMessageDialog(null,"登入成功"); 菜單 n=new 菜單(); n.setSize(500, 300); n.setVisible(true); catch(SQLException ee) System.out.println(ee); if(e.getSource()=qu_xiao)System.exit(0); if(group.getSelec
39、tion()=rb1.getModel() if(e.getSource()=deng_ru) a=textName.getText(); charc=textPs.getPassword(); b= new String(c); try Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");catch(ClassNotFoundException ee)System.out.println(""+e);trycon=DriverManager.getConnection("jdbc:odbc:hehe&q
40、uot;,"",""); sql=con.createStatement(); dx=new Object1; rs=sql.executeQuery("select * from 讀者信息表 where 用戶(hù)名='"+a+"'"); boolean min=rs.next(); if(!min) JOptionPane.showMessageDialog(null,"用戶(hù)名或密碼錯(cuò)誤"); if(min) dx=rs.getString(2); / (String) dx).t
41、rim();/ (String) b).trim(); if(!dx.equals(b) JOptionPane.showMessageDialog(null,"用戶(hù)名或密碼錯(cuò)誤"); if(dx.equals(b) JOptionPane.showMessageDialog(null,"登入成功"); 菜單1 n=new 菜單1(); n.setSize(500, 300); n.setVisible(true); /設(shè)置顯示窗體 catch(SQLException ee) System.out.println(ee); public static
42、void main(String args) new 登陸界面();管理員圖書(shū)管理:查詢(xún):package hehe;import javax.swing.*;import java.awt.*;import java.awt.event.*;import java.sql.*; public class 管理員圖書(shū)信息查詢(xún) extends JDialog implements ActionListener/負(fù)責(zé)顯示記錄的類(lèi) JTable table;/表格 Object a; Object name=" 圖書(shū)編號(hào)","書(shū)名","出版書(shū)號(hào)&quo
43、t;,"編著者","出版社","出版日期","單價(jià)","庫(kù)存數(shù)量" ; JButton S; Connection con; Statement sql; ResultSet rs; 管理員圖書(shū)信息查詢(xún)(String title) setTitle(title); S=new JButton("顯示記錄"); S.addActionListener(this); add(S,BorderLayout.NORTH); setBounds(200,60,800,250); set
44、Visible(true); public void actionPerformed(ActionEvent e) Connection con;Statement sql;ResultSet rs;try Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");catch(ClassNotFoundException ee)System.out.println(""+e);trycon=DriverManager.getConnection("jdbc:odbc:hehe",""
45、;,""); sql=con.createStatement(); rs=sql.executeQuery("select * from 圖書(shū)信息表"); rs.last(); int lastNumber=rs.getRow(); a=new ObjectlastNumber8; int k=0; rs.beforeFirst(); while(rs.next() ak0=rs.getString(1); ak1=rs.getString(2); ak2=rs.getString(3); ak3=rs.getString(4); ak4=rs.getS
46、tring(5); ak5=rs.getString(6); ak6=rs.getString(7); ak7=rs.getString(8); k+; con.close(); / System.out.print("連接失敗"); catch(SQLException ee) / System.out.print("連接失敗"); System.out.println(ee); table=new JTable(a,name); getContentPane().removeAll(); add(S,BorderLayout.NORTH); / Sy
47、stem.out.print("連接失敗"); add(new JScrollPane(table),BorderLayout.CENTER);/滾動(dòng)條 validate(); public static void main(String args) 管理員圖書(shū)信息查詢(xún) wo=new 管理員圖書(shū)信息查詢(xún)("查詢(xún)"); 添加:package hehe;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.sql.Connection;import
48、 java.sql.DriverManager;import java.sql.ResultSet;import java.sql.SQLException;import java.sql.Statement;import javax.swing.Box;import javax.swing.JButton;import javax.swing.JDialog;import javax.swing.JLabel;import javax.swing.JOptionPane;import javax.swing.JScrollPane;import javax.swing.JTable;publ
49、ic class 管理員圖書(shū)信息插入 extends JDialog implements ActionListenerJLabel hintLabel;/標(biāo)簽Object ono=" 圖書(shū)編號(hào)","書(shū)名","出版書(shū)號(hào)","編著者","出版社","出版日期","單價(jià)","庫(kù)存數(shù)量" Object a=new Object18;JTable table;JButton enterInsert;Connection con;Statement sql;ResultSet rs;String num;管理員圖書(shū)信息插入(String s)setTitle(s);hintLabel=new JLabel("輸入新紀(jì)錄");table=new JTable(a,ono);enterInsert=new JButton("插入新紀(jì)錄");setLayout(null);Box baseBox=Box.createHorizont
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 菏澤中考試題及答案
- 高壓進(jìn)網(wǎng)理論考試題及答案
- 山東中考語(yǔ)文試題及答案
- 現(xiàn)代文學(xué)史試題及答案
- 合同編考試題及答案
- 國(guó)樂(lè)進(jìn)社區(qū)活動(dòng)方案
- 商務(wù)廳合作活動(dòng)方案
- 團(tuán)扇活動(dòng)策劃方案
- 團(tuán)委清明活動(dòng)策劃方案
- 商務(wù)演講活動(dòng)策劃方案
- 2023年黃石市黃石港區(qū)社區(qū)工作者招聘考試真題
- 國(guó)家開(kāi)放大學(xué)化工節(jié)能課程-復(fù)習(xí)資料期末復(fù)習(xí)題
- 汽車(chē)行業(yè)焊接車(chē)間工位縮寫(xiě)
- DB61-T 5068-2023 鋼橋面改性聚氨酯混凝土鋪裝應(yīng)用技術(shù)規(guī)程
- 基于水凝膠模板原位合成磷酸鈣類(lèi)骨組織修復(fù)材料及表征
- 畜牧獸醫(yī)畢業(yè)論文名字
- 中國(guó)聯(lián)通5G毫米波技術(shù)白皮書(shū)
- 醫(yī)療人文關(guān)懷
- 系統(tǒng)規(guī)劃與管理師-輔助記憶口訣
- 預(yù)防接種異常反應(yīng)監(jiān)測(cè)與處理
- 輸液發(fā)熱反應(yīng)的護(hù)理流程圖
評(píng)論
0/150
提交評(píng)論