java课程设计小型图书管理系统Word文档下载推荐.docx
《java课程设计小型图书管理系统Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《java课程设计小型图书管理系统Word文档下载推荐.docx(54页珍藏版)》请在冰豆网上搜索。
作者
出版社
入库时间
2.表user
用户名
密码
系统源码
程序代码
1登陆界面:
程序名Login.java
importjava.awt.event.*;
importjavax.swing.*;
importjava.awt.*;
importjava.awt.Container;
importjava.util.*;
importjava.sql.*;
classLoginextendsJFrameimplementsActionListener
{Containercp=null;
JFramef=null;
JButtonj1,j2;
JTextFieldt1;
JPasswordFieldt2;
JLabeljlable1,jlable2;
Colorc;
JPaneljp1,jp2;
Login(){
f=newJFrame("
小型图书管理系统"
);
j1=newJButton("
确定"
j2=newJButton("
取消"
cp=f.getContentPane();
jlable1=newJLabel("
输入用户名"
jlable2=newJLabel("
用户密码"
jp1=newJPanel();
jp2=newJPanel();
t1=newJTextField(18);
t2=newJPasswordField(18);
jp1.add(jlable1);
jp1.add(t1);
jp1.add(jlable2);
jp1.add(t2);
JLabelJL=newJLabel("
<
html>
fontcolor=#CC00FFsize='
7'
>
i>
欢迎登陆<
/i>
/font>
"
SwingConstants.CENTER);
cp.add(JL,"
North"
jp2.add(j1);
jp2.add(j2);
cp.add(jp1,"
Center"
cp.add("
South"
jp2);
jp1.setBackground(newColor(255,153,255));
Toolkitkit=Toolkit.getDefaultToolkit();
Dimensionscreen=kit.getScreenSize();
intx=screen.width;
/*取得显示器窗口的宽度*/
inty=screen.height;
/*取得显示器窗口的高度*/
//setSize(x,y);
/*让系统窗口平铺整个显示器窗口*/
f.setSize(300,300);
intxcenter=(x-300)/2;
intycenter=(y-300)/2;
f.setLocation(xcenter,ycenter);
/*显示在窗口中央*/
f.setVisible(true);
//-----------------------------------------------------
j1.addActionListener(this);
//注册事件监听器
j2.addActionListener(this);
f.addWindowListener(newWindowAdapter(){
publicvoidwindowClosing(WindowEvente){
System.exit(0);
}
}
);
}
publicvoidconfirm()//验证用户和密码是否存在
{
try{
Class.forName("
sun.jdbc.odbc.JdbcOdbcDriver"
}catch(ClassNotFoundExceptione){System.out.println("
加载驱动程序失败!
}
try{
Stringurl="
jdbc:
odbc:
driver={MicrosoftAccessDriver(*.mdb)};
DBQ=Book.mdb"
;
//直接使用当前类目录下的数据库文件
Connectioncon=DriverManager.getConnection(url);
Statementsql=con.createStatement();
Stringuname=t1.getText().trim();
StringMima=t2.getText().trim();
StringqueryMima="
select*fromuserwhere用户名='
+uname+"
'
and密码='
+Mima+"
ResultSetrs=sql.executeQuery(queryMima);
if(rs.next())
{
newBook(uname);
f.hide();
con.close();
}else{
JOptionPane.showMessageDialog(null,"
该用户不存在"
"
提示!
JOptionPane.YES_NO_OPTION);
t1.setText("
t2.setText("
}catch(SQLExceptiong)
{
System.out.println("
ECode"
+g.getErrorCode());
EM"
+g.getMessage());
publicvoidactionPerformed(ActionEvente)
Stringcmd=e.getActionCommand();
if(cmd.equals("
)){
confirm();
elseif(cmd.equals("
f.dispose();
publicstaticvoidmain(String[]arg){
Logina=newLogin();
2图书概览:
程序名BookBrower.java
classBookBrowerimplementsActionListener
{
JFramef;
Containercp;
JPaneljpS,jpanelWest;
JButtonjbt1,jbt2;
//按钮,查询、取消、修改
JLabellabel,L;
//标签
//定义文本框
JTabletable;
//用来接收数据库中返回的信息
ObjectcolumnName[]={"
图书名"
图书号"
单价"
作者"
出版社"
入库时间"
};
Objectar[][]=newObject[80][6];
Stringsno;
Stringcount="
xx"
BookBrower()
{
f=newJFrame();
cp=f.getContentPane();
//初始化面板、按钮、标签、文本框
jpS=newJPanel();
jpanelWest=newJPanel();
//------------------------------------------------
jbt1=newJButton("
jbt2=newJButton("
返回"
label=newJLabel("
4'
图书概览<
label.setForeground(Color.blue);
L=newJLabel("
书库现在共有图书"
+count+"
本"
table=newJTable(ar,columnName);
//ar存放表中的数据,columnname表示列名
JScrollPanescrollpane=newJScrollPane(table);
//布局,添加控件
jpS.add(jbt1);
jpS.add(jbt2);
JPaneljpanel=newJPanel();
jpanel.add(label);
JPanelpp4=newJPanel();
JPaneljpE=newJPanel();
cp.add(jpanel,"
JPaneljp=newJPanel();
//jp.add(scrollpane);
JPanelp=newJPanel();
//用来放两个表
p.setLayout(newBorderLayout());
p.add(L,"
p.add(scrollpane);
cp.add(pp4,"
West"
cp.add(p,"
cp.add(jpS,"
cp.add(jpE,"
East"
Toolkitkit=Toolkit.getDefaultToolkit();
Dimensionscreen=kit.getScreenSize();
intx=screen.width;
inty=screen.height;
f.setSize(400,330);
intxcenter=(x-350)/2;
intycenter=(y-330)/2;
//-------------------------------------------------
jbt1.addActionListener(this);
//注册监听器
jbt2.addActionListener(this);
/*f.addWindowListener(newWindowAdapter(){
*/
inti=0;
publicvoidshowRecord()
while(i>
=0)
{
ar[i][0]="
ar[i][1]="
ar[i][2]="
ar[i][3]="
ar[i][4]="
ar[i][5]="
i--;
i=0;
Strings="
select*frombook"
Statementsql=con.createStatement();
ResultSetrs=sql.executeQuery(s);
while(rs.next())
Stringbname=rs.getString
(1);
Stringbno=rs.getString
(2);
Stringprice=rs.getString(3);
Stringwriter=rs.getString(4);
Stringpublish=rs.getString(5);
Stringindate=rs.getString(6);
ar[i][0]=bname;
ar[i][1]=bno;
ar[i][2]=price;
ar[i][3]=writer;
ar[i][4]=publish;
ar[i][5]=indate;
i++;
count="
+i+"
L.setText("
f.repaint();
con.close();
}catch(SQLExceptiong)
))
f.hide();
}
publicstaticvoidmain(String[]arg){
BookBrowera=newBookBrower();
a.showRecord();
3图书查询:
程序名QueryBook.java
classQueryBookimplementsActionListener
JFramef3;
JPaneljp1,jp2,jp3,jp4,jp,jpanelWest;
//按钮,确定、取消
JLabellabel;
//标签:
请输入图书号
JTextFieldtf,tf1,tf2,tf3,tf4,tf5,tf6;
JLabellabel1,label2,label3,label4;
QueryBook()
f3=newJFrame();
cp=f3.getContentPane();
jp1=newJPanel();
jp2=newJPanel();
jp3=newJPanel();
jp4=newJPanel();
jp=newJPanel();
请输入图书号:
tf=newJTextField(20);
tf1=newJTextField(20);
tf2=newJTextField(20);
tf3=newJTextField(20);
tf4=newJTextField(20);
tf5=newJTextField(20);
tf6=newJTextField(20);
jpanel.add(tf);
JPaneljpane4=newJPanel();
JPanelpp2=newJPanel(newGridLayout(6,1));
JPanelpp3=newJPanel();
pp4.setLayout(newGridLayout(6,1));
pp4.add(newJLabel("
SwingConstants.CENTER));
pp2.add(tf1);
pp2.add(tf2);
单价"
pp2.add(tf3);
作者"
pp2.add(tf4);
pp2.add(tf5);
pp2.add(tf6);
pp3.add(jbt1);
pp3.add(jbt2);
cp.add(pp2,"
cp.add(pp3,"
cp.add(jpane4,"
f3.setSize(350,330);
f3.setLocation(xcenter,ycenter);
f3.setVisible(true);
/*f3.addWindowListener(newWindowAdapter(){
Sy