小型图书管理系统Java课程设计
小型图书管理系统Java课程设计课程名称:Java应用项目作者:* * *前言本系统是小型图书管理系统,专为个人设计。本系统启动后需要登陆,然后进入主界在这个界面我们可以选择所需要的功能模块来完成所要执行的功能。系统共有4个功能模块:图书入库、图书查询、图书删除、图书概览、修改密码。支持一系列关于图书管理方面的简单操作,诸如查询、删除、添加、修改密码等。系统流程图图书删除图书概览修改密码图书查询图书入库系统开始失败退出判断成功判断输入密码说明:退出首先是输入判断,相当于在登陆模块,要求用户输入用户名和密码;然后判断,如果判断失败退出系统,否则进入图书管理系统的主界面。进入主界面后,用户要选择所需执行的功能,即通过鼠标点击相应项,来完成所需操作。图书名图书号单价作者出版社入库时间表book表user用户名密码数据库表 数据库设计在图书管理系统中,共设计2张表。本系统使用Access来创建数据表。数据库的名称为Book.mdb。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 extends 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(" 输入用户名");jlable2=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("<html><font color=#CC00FF size='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(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.setLocation(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()/验证用户和密码是否存在 tryClass.forName("sun.jdbc.odbc.JdbcOdbcDriver"); catch(ClassNotFoundException e)System.out.println("加载驱动程序失败!");tryString 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=t2.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(); elseJOptionPane.showMessageDialog(null,"该用户不存在","提示!", JOptionPane.YES_NO_OPTION); t1.setText("");t2.setText(""); catch(SQLException 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图书概览:程序名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 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("<html><font color=#CC00FF size='4'>图书概览</font>",SwingConstants.CENTER);label.setForeground(Color.blue);L=new JLabel("书库现在共有图书"+count+"本");/- table=new JTable(ar,columnName);/ar存放表中的数据,columnname表示列名JScrollPane scrollpane = new JScrollPane(table);/-