1、数据库课程设计小型图书管理系统Java应用课程设计项目名称:图书管理系统课程名称:Java应用项目作者:_ 完成日期:2010年7月15日前言本系统是小型图书管理系统,专为个人设计。本系统启动后需要登陆,然后进入主界在这个界面我们可以选择所需要的功能模块来完成所要执行的功能。系统共有4个功能模块:图书入库、图书查询、图书删除、图书概览、修改密码。支持一系列关于图书管理方面的简单操作,诸如查询、删除、添加、修改密码等。系统流程图说明:首先是输入判断,相当于在登陆模块,要求用户输入用户名和密码;然后判断,如果判断失败退出系统,否则进入图书管理系统的主界面。进入主界面后,用户要选择所需执行的功能,即
2、通过鼠标点击相应项,来完成所需操作。数据库设计在图书管理系统中,共设计2张表。本系统使用Access来创建数据表。1.表book字段名称数据类型图书名文本图书号文本(主键)单价文本作者文本出版社文本入库时间文本2.表user字段名称数据类型用户名文本(主键)密码文本系统源码程序代码1登陆界面:程序名Login.javaimport java.awt.event.*;import javax.swing.*;import java.awt.*;import java.awt.Container;import java.util.*;import java.sql.*; class Login e
3、xtends JFrame implements ActionListener Container cp=null; JFrame f=null; JButton j1,j2; JTextField t1; JPasswordField t2; JLabel jlable1,jlable2; Color c; JPanel jp1,jp2; Login() f=new JFrame(小型图书管理系统); j1=new JButton(确定); j2=new JButton(取消); cp=f.getContentPane(); jlable1=new JLabel( 输入用户名); jlabl
4、e2=new JLabel( 用户密码); jp1=new JPanel(); jp2=new JPanel(); t1=new JTextField(18); t2=new JPasswordField(18); jp1.add(jlable1); jp1.add(t1); jp1.add(jlable2); jp1.add(t2); JLabel JL=new JLabel(欢迎登陆,SwingConstants.CENTER); cp.add(JL,North); jp2.add(j1); jp2.add(j2); cp.add(jp1,Center); cp.add(South,jp2
5、); jp1.setBackground(new Color(255,153,255); Toolkit kit=Toolkit.getDefaultToolkit(); Dimension screen=kit.getScreenSize(); int x=screen.width; /*取得显示器窗口的宽度*/ int y=screen.height; /*取得显示器窗口的高度*/ /setSize(x,y); /*让系统窗口平铺整个显示器窗口*/ f.setSize(300,300); int xcenter=(x-300)/2; int ycenter=(y-300)/2; f.set
6、Location(xcenter,ycenter);/*显示在窗口中央*/ f.setVisible(true); /- j1.addActionListener(this);/注册事件监听器 j2.addActionListener(this); f.addWindowListener(new WindowAdapter() public void windowClosing(WindowEvent e) System.exit(0); ); public void confirm()/验证用户和密码是否存在 try Class.forName(sun.jdbc.odbc.JdbcOdbcD
7、river); catch(ClassNotFoundException e)System.out.println(加载驱动程序失败!); try String url = jdbc:odbc:driver=Microsoft Access Driver (*.mdb);DBQ=Book.mdb;/直接使用当前类目录下的数据库文件 Connection con=DriverManager.getConnection(url); Statement sql=con.createStatement(); String uname=t1.getText().trim(); String Mima=t
8、2.getText().trim(); String queryMima=select * from user where 用户名=+uname+ and 密码=+Mima+; ResultSet rs=sql.executeQuery(queryMima); if(rs.next() new Book(uname); f.hide(); con.close(); else JOptionPane.showMessageDialog(null,该用户不存在,提示!, JOptionPane.YES_NO_OPTION); t1.setText(); t2.setText(); catch(SQ
9、LException g) System.out.println(E Code+g.getErrorCode(); System.out.println(E M+g.getMessage(); public void actionPerformed(ActionEvent e) String cmd=e.getActionCommand(); if(cmd.equals(确定) confirm(); else if(cmd.equals(取消) f.dispose(); public static void main(String arg) Login a=new Login(); 2图书概览
10、:程序名BookBrower.javaimport java.awt.event.*;import javax.swing.*;import java.awt.*;import java.awt.Container;import java.util.*;import java.sql.*;class BookBrower implements ActionListener JFrame f; Container cp; JPanel jpS,jpanelWest; JButton jbt1,jbt2;/按钮,查询、取消、修改 JLabel label,L; /标签 /定义文本框 JTable
11、table;/用来接收数据库中返回的信息 Object columnName=图书名,图书号,单价,作者,出版社,入库时间; Object ar =new Object806; String sno; String count=xx; BookBrower() f=new JFrame(); cp=f.getContentPane(); / 初始化面板、按钮、标签、文本框 jpS=new JPanel(); jpanelWest=new JPanel(); /- jbt1=new JButton(确定); jbt2=new JButton(返回); /- label=new JLabel(图书
12、概览,SwingConstants.CENTER); label.setForeground(Color.blue); L=new JLabel(书库现在共有图书+count+本); /- table=new JTable(ar,columnName);/ar存放表中的数据,columnname表示列名 JScrollPane scrollpane = new JScrollPane(table); /- /布局,添加控件 jpS.add(jbt1); jpS.add(jbt2); JPanel jpanel=new JPanel(); jpanel.add(label); JPanel pp4=new JPanel(); JPanel jpE=new JPanel(); cp.add(jpanel,North); JPanel jp=new JPanel(); /jp.add(scrollpane); JPanel p=new JPanel();/用来放两个表 p.setLayout(new BorderLayout(); p.add(L,North); p.add(scrollpane); cp.add(pp4,West); cp.add(p,Center);
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1