数据库课程设计小型图书管理系统文档格式.docx
《数据库课程设计小型图书管理系统文档格式.docx》由会员分享,可在线阅读,更多相关《数据库课程设计小型图书管理系统文档格式.docx(45页珍藏版)》请在冰豆网上搜索。
本系统使用Access来创建数据表。
1.表book
字段名称
数据类型
图书名
文本
图书号
文本(主键)
单价
作者
出版社
入库时间
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,"