1、教材管理系统及其源代码1需求分析本软件是教材管理系统,主要完成管理员对教材的管理,如信息录入,查询等,功能如下所示;软件设计的目的是方便管理员对教材信息的管理,便于学校等机构使用。完成教材管理系统的设计与实现,主要包括以下基本内容:1)教材信息的录入;2)教材信息的查询;3)教材的入库和出库;4)教材库存查询;5)各项统计工作及打印;6)完成程序的最终调试,必须能正常运行。2总体设计 教材入库部分通过输入教材详细信息将教材入库,教材出库部分通过教材号删除其信息,教材查询通过其教材号查询,教材该来输出全部教材详细信息。数据库设计 本软件设计一个表,名为Book.表book字段名称数据类型教材名文
2、本教材号文本(主键)价格文本作者文本出版社文本入库时间文本3详细设计1)登陆界面设计mport 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
3、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(jlable
4、1); 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); jp1.setBackground(new Color(255,153,255); Toolkit kit=Toolkit.getDefaultToolkit(); Dimension screen=kit.getScreenSize()
5、; 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
6、.addWindowListener(new WindowAdapter() public void windowClosing(WindowEvent e) System.exit(0); ); public void actionPerformed(ActionEvent e) String cmd=e.getActionCommand(); if(cmd.equals(确定) new Book(t1.getText(); else if(cmd.equals(取消) f.dispose(); public static void main(String args) Login a=new
7、 Login(); 2)主界面设计,显示软件主要功能,即教材入库出库查询等功能。Book.java import .*;import java.sql.*;import java.awt.*;import java.awt.event.*;import java.io.*;import java.util.*;import javax.swing.*;import javax.swing.border.*;import java.util.*;class Book extends JFrame implements ActionListener JButton QueryScore=new J
8、Button(教材查询); JButton QueryXuefen=new JButton(教材入库); JButton jiangfa=new JButton(教材删除); JButton xuanke=new JButton(教材概览); JButton gaiMima=new JButton(打印); JMenuBar mb = new JMenuBar();/菜单栏 JPanel jp=new JPanel();/用来填放子模块 Container cp=getContentPane(); String username; Book() Book(String username) th
9、is.username=username; mb.add(QueryScore); mb.add(QueryXuefen); mb.add(jiangfa); mb.add(xuanke); mb.add(gaiMima); cp.add(mb,North); / 设置边框 jp.setBorder(BorderFactory.createTitledBorder(BorderFactory .createLineBorder(Color.blue, 2),null, TitledBorder.CENTER, TitledBorder.TOP); jp.setLayout(new Border
10、Layout(); JLabel label1 = new JLabel(new ImageIcon(4.jpg); jp.add(label1); /* JLabel JL=new JLabel(欢迎登陆,SwingConstants.CENTER); jp.add(JL,North);*/ JLabel label2 = new JLabel(new ImageIcon(2.jpg); /jp.add(label2,South); JScrollPane scrollpane=new JScrollPane(jp); cp.add(scrollpane); setTitle(欢迎登陆);T
11、oolkit kit=Toolkit.getDefaultToolkit(); Dimension screen=kit.getScreenSize(); int x=screen.width; /*取得显示器窗口的宽度*/ int y=screen.height; /*取得显示器窗口的高度*/ /setSize(x,y); /*让系统窗口平铺整个显示器窗口*/ setSize(600,600); int xcenter=(x-600)/2; int ycenter=(y-600)/2; setLocation(xcenter,ycenter);/*显示在窗口中央*/ setVisible(t
12、rue); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); /注册临听器 QueryScore.addActionListener(this); QueryXuefen.addActionListener(this); jiangfa.addActionListener(this); xuanke.addActionListener(this); public void actionPerformed(ActionEvent e) String cmd=e.getActionCommand(); if (cmd.equals(教材查询) new
13、QueryBook(); if (cmd.equals(教材入库) new BookIn(); if (cmd.equals(教材删除) new RemoveBook(); if (cmd.equals(教材概览) new BookBrower().showRecord(); public static void main(Stringargs) new Book(); 3)教材概览模块,提供库中教材总体情况查询。BookBrower.javaimport java.awt.event.*;import javax.swing.*;import java.awt.*;import java.a
14、wt.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
15、 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(教材概览,SwingConstants.CENTER); label.setForeground(Color.blue); L=new JLabel(书库现在共有教材+count+本); /- t
16、able=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(sc
17、rollpane); JPanel p=new JPanel();/用来放两个表 p.setLayout(new BorderLayout(); p.add(L,North); p.add(scrollpane); cp.add(pp4,West); cp.add(p,Center); cp.add(jpS,South); cp.add(jpE,East); /- Toolkit kit=Toolkit.getDefaultToolkit(); Dimension screen=kit.getScreenSize(); int x=screen.width; /*取得显示器窗口的宽度*/ in
18、t y=screen.height; /*取得显示器窗口的高度*/ f.setSize(400,330); int xcenter=(x-350)/2; int ycenter=(y-330)/2; f.setLocation(xcenter,ycenter);/*显示在窗口中央*/ f.setVisible(true); /- jbt1.addActionListener(this);/注册监听器 jbt2.addActionListener(this); /* f.addWindowListener(new WindowAdapter() public void windowClosing
19、(WindowEvent e) System.exit(0); );*/ /- int i=0; public void showRecord() tryClass.forName(sun.jdbc.odbc.JdbcOdbcDriver); catch(ClassNotFoundException e)System.out.println(加载驱动程序失败!); tryString url = jdbc:odbc:jf;/直接使用当前类目录下的数据库文件 Connection con=DriverManager.getConnection(url); String s=select * fr
20、om book; Statement sql=con.createStatement(); ResultSet rs=sql.executeQuery(s); while(rs.next() String bname=rs.getString(1); String bno=rs.getString(2); String price=rs.getString(3); String writer=rs.getString(4); String publish=rs.getString(5); String indate=rs.getString(6); ari0=bname; ari1=bno;
21、ari2=price; ari3=writer; ari4=publish; ari5=indate; i+; count=+i+; L.setText(书库现在共有教材+count+本); f.repaint(); con.close(); 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(
22、); if(cmd.equals(确定) f.hide(); if(cmd.equals(返回) f.hide(); 4)教材入库模块,将教材及其相关信息入库。BookIn.javaimport java.awt.event.*;import javax.swing.*;import java.awt.*;import java.awt.Container;import java.util.*;import java.sql.*;import javax.swing.text.JTextComponent;/extends JFrameclass BookIn implements Actio
23、nListener JFrame f3; Container cp; JPanel jp1,jp2,jp3,jp4,jp,jpanelWest; JButton jbt1,jbt2;/按钮:确定、取消、 JLabel label; /标签 JTextField tf1,tf2,tf3,tf4,tf5,tf6; /定义文本框 JLabel label1,label2,label3,label4; String sno; BookIn() f3=new JFrame(); cp=f3.getContentPane(); / 初始化面板、按钮、标签、文本框 jp1=new JPanel(); jp2
24、=new JPanel(); jp3=new JPanel(); jp4=new JPanel(); jpanelWest=new JPanel(); jp=new JPanel(); /- jbt1=new JButton(确定); jbt2=new JButton(取消); /- label=new JLabel(教材入库); label.setForeground(Color.blue); /- tf1=new JTextField(20); tf2=new JTextField(20); tf3=new JTextField(20); tf4=new JTextField(20); t
25、f5=new JTextField(20); tf6=new JTextField(20); /- /布局,添加控件 jp1.add(jbt1); jp1.add(jbt2); sno=tf4.getText(); jp1.add(new JLabel(您好+sno+欢迎登陆教材信息系统); JPanel jpanel=new JPanel(); jpanel.add(label); JPanel pp4=new JPanel(); JPanel jpane4=new JPanel(); cp.add(jpanel,North); JPanel pp2=new JPanel(new GridL
26、ayout(6,1); JPanel pp3=new JPanel(); pp4.setLayout(new GridLayout(6,1); pp4.add(new JLabel(教材名,SwingConstants.CENTER); pp2.add(tf1); pp4.add(new JLabel(教材号,SwingConstants.CENTER); pp2.add(tf2); pp4.add(new JLabel(单 价,SwingConstants.CENTER); pp2.add(tf3); pp4.add(new JLabel(作 者,SwingConstants.CENTER); pp2.add(tf4); pp4.add(new JLabel(出版社,SwingConstants.CENTER); pp2.add(tf5); pp4.add(new JLabel(入库时间,SwingConstants.CENTER); pp2.add(tf6); pp3.add(jbt1);pp3.add(jbt2); cp.add(pp4,West); cp.add(pp2,Center); cp.add(pp3,South);
copyright@ 2008-2023 冰点文库 网站版权所有
经营许可证编号:鄂ICP备19020893号-2