Java课程设计超库存管理系统附源代码可以直接运行文档良心出品_第1页
Java课程设计超库存管理系统附源代码可以直接运行文档良心出品_第2页
Java课程设计超库存管理系统附源代码可以直接运行文档良心出品_第3页
Java课程设计超库存管理系统附源代码可以直接运行文档良心出品_第4页
Java课程设计超库存管理系统附源代码可以直接运行文档良心出品_第5页
已阅读5页,还剩30页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

榆林学院[超市库存管理系统]专 业:[计算机科学与技术1班 级:[13级计本1班1学生姓名:[李治生1学 号:/p>

TOC\o"1-5"\h\z\o"CurrentDocument"一、 需求分析 3\o"CurrentDocument"二、 概要设计 3\o"CurrentDocument"三、 详细设计 4\o"CurrentDocument"1、数据库设计 4\o"CurrentDocument"用户登录界面: 6\o"CurrentDocument"进入主界面: 9\o"CurrentDocument"四、 软件测试 39\o"CurrentDocument"五、 总结 40\o"CurrentDocument"六、 附录: 41一、需求分析本系统主要是用来帮助小型超市进行库存管理系统,能够有效的帮助小型超市进行库存管理!其中包括增删改查等基本的应用。 极大的提高了超市的库存管理效率, 节省了大量的时间。**********************************************************************************************************************二、概要设计1、 本系统的每一个功能模块都包含了多个功能。整个系统主要完成对超市商品的日常管理,包括进货管理,库存管理和供应商管理等方面。 在功能上系统可以完成对相关信息的浏览、查询、添加、删除、修改等功能。本课题的核心之一是销售管理、库存管理和进货管理三者之间的联系,同时系统有完整的用户管理功能。本系统采用java语言和SQLServer2008作为开发工具。这种系统优势在于系统比较简单, 但功能强大,扩展性能也比较好,完全能够处理一般超市的日常任务2、整体分为3个模块(货物,供应商,记录)每个模块之间相互关联,都有自己的增删改查!3、 程序流程图如下:进货计划OVER三、详细设计1、数据库设计Goods表:2015-20151114WF\LZS+LZ£-dbo.goods列名数据类型允许创值ntnshartg^mringchar(10)fnhuofamtehcLijiintzhekoiijiaint園yuliarigint園yuliarigyujingzliiintgorgyingsliangndiar(lQ)□Lzs(用户登录名,密码)2013-201S1114WF\LZS.LZS-dbo.lzs2013*20151114WJL 列名敎据类型允许Nul值ncharflQ)mimanchar(lO)Recond表():记录表2013-20151114WF\LZS.LZ5•dbo.recard2O13-2O151114WF\LZS.L2別名 数据类型 吊许硕值'SOnwchar(SO)0shangpinmingnwarchar(50)0gongyingshangnvarchar(M)caoztionvarchar(M)圜nvarchar(SO)ESupplier(供应商表)20U^0151114WF\L...Z£亠dbo.supplier2013-20151H4WF\LZS.L7S-dbc列名数据类型允诈Null值shijian[nvarchar(50)gongyngshangnvardiar(SO)圈lianxidianhuanvardiar(SO)g]dizhinvardiar(SO)g]yotixiangnvardiar(SO)圈beizhunvardiar(SO)用户登录界面:packagesource;importjava.awt.*;importjava.awt.event.*;importjavax.swing.*;importjava.sql.*;@SuppressWarnings("serial")publicclassloginframeextendsJFrameimplementsActionListener{JTextField用户名;JPasswordField密码;JButton登录,重置;BoxbaseBox,box1,box2,box3;〃盒式布局ImagePanelp;〃用于插入图片的面板JSplitPanesplit;//拆分窗格Fontf;〃设置字体JLabeluserName,psw;FunctionwMain;Connectioncon;Statementsql;ResultSetrs;Stringdbdriver ="com.microsoft.sqlserver.jdbc.SQLServerDriver";Stringdburl="jdbc:sqlserver://localhost:1433;DatabaseName=LZS";Stringuser="sa";Stringpass="123";publicloginframe(){setLayout(newFlowLayout());init();setBounds(130,80,960,600);setVisible(true);setResizable(false);try{Class.forName(dbdriver);}catch(ClassNotFoundExceptionclassnotfound){System.out.println(”未能找到SQLServerDriver,请检查是否已加载 SQLServer驱动");}}voidinit(){f=newFont("幼圆",Font.BOLD,18);p=newImagePanel(newImageIcon("E:/Java文件/SuperMarket/picture/1.jpg").getlmage());登录=newJButton(”登录");登录.addActionListener(this);重置=newJButton(”重置");重置.addActionListener(this);用户名=newJTextField(16);用户名.setFont(f);密码=newJPasswordField(16);userName=newJLabel("用户名:”);userName.setFont(f);psw=newJLabel("密码:”);psw.setFont(f);box1=Box.createVerticalBox();box1.add(userName);box1.add(Box.createVerticalStrut(20));box1.add(psw);box2=Box.createVerticalBox();box2.add(Box.createVerticalStrut(240));box2.add(用户名);box2.add(Box.createVerticalStrut(20));box2.add(密码);box2.add(Box.createVerticalStrut(20));box3=Box.createHorizontalBox();box3.add(登录);box3.add(Box.createHorizontalStrut(20));box3.add(重置);box2.add(box3);box2.add(Box.createVerticalStrut(200));baseBox=Box.createHorizontalBox();baseBox.add(box1);baseBox.add(Box.createHorizontalStrut(15));baseBox.add(box2);〃baseBox.add(登录);split=newJSplitPane(JSplitPane.HORIZONTAL_SPLIT,false,p,baseBox);split.setDividerLocation(0.5);add(split,BorderLayout.PAGE_START);}publicvoidactionPerformed(ActionEvente){if(e.getSource()==登录){StringUname=用户名.getText().trim();char[]psw=密码.getPassword();StringpassWord=newString(psw);try{con=DriverManager.getConnection("jdbc:sqlserver://localhost:1433;DatabaseName=LZS","sa","123");System.out.println(”数据库连接成功r);sql=con.createStatement();Stringstring="SELECT*FROMlzsWHEREUname='"+Uname+"'ANDmima='"+passWord+"”';rs=sql.executeQuery(string);if(rs.next()){wMain=newFunction。;wMain.setTitle(”超市库存管理系统”);wMain.setVisible(true);this.dispose();//wMain.pack();}else{JOptionPane.showMessageDialog(this,"您输入的用密码不正确","警告对话框”,JOptionPane.WARNING_MESSAGE);密码.setText(null);密码.requestFocus();}con.close();}catch(SQLExceptionee){ee.printStackTrace();}}elseif(e.getSource()==重置){用户名.setText(””);密码.setText(””);}}}进入主界面:

设计代码如下:packagesource;importjava.awt.*;importjava.awt.event.*;importjavax.swing.*;@SuppressWarnings("serial")publicclassFunctionextendsJFrameimplementsActionListener{Fontf;//菜单栏JMenuBarmenubar;//菜单条JMenu货物,供应商,记录;//菜单JMenultem货物管理,退出,供应商管理,查询记录,进货计划;//菜单项//Boxbox;JLabellabel;ImagePanelp;//用于插入图片的面板//构造函数Function(){setLayout(newFlowLayout());init();setTitle(”超市库存管理系统”);setLocation(20,30);setSize(1200,800);setBounds(130,80,960,600);setVisible(true);setResizable(false);}voidinit(){menubar=newJMenuBar();f=newFont("华文行楷",Font.BOLD,50);Fontf2=newFont("宋体",0,12);p=newImagePanel(newImageIcon("E:Java文件/SuperMarket/picture/2.jpg").getlmage());//库房货物管理菜单货物=newJMenu(”货物");货物.setFont(f2);货物管理=newJMenultem(”货物管理");货物管理.setFont(f2);货物管理.addActionListener(this);退出=newJMenultem(”退出");退出.setFont(f2);退出.addActionListener(this);货物.add(货物管理);货物.add(退出);menubar.add(货物);//货物供应商菜单供应商=newJMenu(”供应商");供应商.setFont(f2);供应商管理=newJMenultem(”供应商管理”);供应商管理.setFont(f2);供应商管理.addActionListener(this);供应商.add(供应商管理);menubar.add(供应商);//货物进货、入库和出库记录查询菜单记录=newJMenu(”记录");记录.setFont(f2);查询记录=newJMenultem(”查询记录");查询记录.setFont(f2);查询记录.addActionListener(this);进货计划=newJMenultem(”进货计划”);进货计划.setFont(f2);进货计划.addActionListener(this);记录.add(查询记录);记录.add(进货计划);menubar.add(记录);label=newJLabel("欢迎进入超市库存管理系统 ”);label.setFont(f);p.add(label);label.setBounds(300,400,800,200);add(p,BorderLayout.CENTER);setJMenuBar(menubar);}publicvoidactionPerformed(ActionEvente){if(e.getSource()==供应商管理){SupplierManagesmTable=newSupplierManage();smTable.setVisible(true);smTable.pack();}elseif(e.getSource()==货物管理){goodsgoTable=newgoods();goTable.setVisible(true);goTable.pack();}elseif(e.getSource()==查询记录){recordreTable=newrecord();reTable.setVisible(true);reTable.pack();}elseif(e.getSource()==进货计划){planplTable=newplan();plTable.setVisible(true);plTable.pack();}elseif(e.getSource()==退出)

this.dispose();}}}进入第一菜单(货物管理)丄短市耳唱是系虚在此菜单下,可进行货物的增删改查操作,设计代码如下:packagesource;importjava.awt.*;importjava.awt.event.*;importjava.sql.*;importjavax.swing.*;importjavax.swing.table.DefaultTableModel;@SuppressWarnings("serial")publicclassgoodsextendsJFrameimplementsActionListener{JTabletable;JLabellabel;JTextFieldinputText;String[]name={"货物号",”货物名",”进货价",”售价","折扣价","余量",”余量预警值","供应商"};String[]strings=newString[8];JButton添加修改删除,退出,确认修改;JPanelp;JLabel[]labels=newJLabel[8];JTextField[]fields=newJTextField[8];BoxbaseBox,box1,box2;ImagePanelpp;〃用于插入图片的面板JSplitPanesplit;//拆分窗格DefaultTableModeldeModel=null;Connectioncon;Statementsql;ResultSetrs;Stringdbdriver="com.microsoft.sqlserver.jdbc.SQLServerDriver";Stringdburl="jdbc:sqlserver://localhost:1433;DatabaseName=LZS";Stringuser="sa";Stringpass="123";goods(){setLayout(newBorderLayout());init();// Toolkittk=Toolkit.getDefaultToolkit();// Imageimg=tk.getlmage("E:Java文件/SuperMarket/picture/2.jpg");// setIconlmage(img);setTitle("货物管理");setBounds(130,80,960,600);;//setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);setResizable(false);try{Class.forName(dbdriver);}catch(ClassNotFoundExceptionclassnotfound){classnotfound.printStackTrace();}voidinit(){pp=newImagePanel(newImagelcon("E:/Java文件/SuperMarket/picture/2.jpg").getlmage());添加=newJButton(”添加”);修改=newJButton(”修改");删除=newJButton(”删除");退出=newJButton(”退出");确认修改=newJButton(”确认修改”);label=newJLabel("请输入想要删除或修改的货物名: ");inputText=newJTextField(8);添加.addActionListener(this);修改.addActionListener(this);删除.addActionListener(this);退出.addActionListener(this);确认修改.addActionListener(this);p=newJPanel();p.add(label);p.add(inputText);p.add(添加);p.add(修改);p.add(删除);p.add(退出);p.add(确认修改);add(p,BorderLayout.SOUTH);labels[0]=newJLabel("货物号");labels[1]=newJLabel("货物名");labels[2]=newJLabel("进货价");labels[3]=newJLabel("售价");labels[4]=newJLabel("折扣价");labels[5]=newJLabel("余量");labels[6]=newJLabel("余量预警值");labels[7]=newJLabel("供应商");for(inti=0;i<8;i++){fields[i]=newJTextField(20);}//用盒式容器装要录入的数据和标签box1=Box.createVerticalBox();box1.add(Box.createVerticalStrut(15));for(inti=0;i<8;i++){box1.add(labels[i]);box1.add(Box.createVerticalStrut(35));}box2=Box.createVerticalBox();box2.add(Box.createVerticalStrut(10));for(inti=0;i<8;i++){box2.add(fields[i]);box2.add(Box.createVerticalStrut(14));}baseBox=Box.createHorizontalBox();baseBox.add(box1);baseBox.add(Box.createHorizontalStrut(15));baseBox.add(box2);//添加表格add(baseBox,BorderLayout.EAST);deModel=newDefaultTableModel(name,0);table=newJTable(deModel);table.setCellSelectionEnabled(false);table.setEnabled(false);table.setShowHorizontalLines(true);table.setShowVerticalLines(true);//add(newJScrollPane(table),BorderLayout.CENTER);split=newJSplitPane(JSplitPane.HORIZONTAL_SPLIT,false,newJScrollPane(table),baseBox);split.setDividerLocation(0.5);add(split,BorderLayout.CENTER);StringsqlString="select*fromgoods";try{//连接数据库con=DriverManager.getConnection(dburl,user,pass);sql=con.createStatement();JOptionPane.showMessageDialog(this,"数据库连接成功!",”消息对话框",JOptionPane」NFORMATION_MESSAGE);rs=sql.executeQuery(sqlString);while(rs.next()){for(inti=0;i<8;i++){strings[i]=rs.getString(i+1);〃把查询的结果填入表格中}deModel.addRow(strings);deModel.fireTableStructureChanged();〃更新中的数据}}catch(SQLExceptionee){ee.printStackTrace();}publicvoidactionPerformed(ActionEvente){if(e.getSource()==添加){StringsqlString="INSERTINTOgoodsVALUES(”'+fields[0].getText()+"',”'+fields[1].getText()+"T"+fields[2].getText()+"',”'+fields[3].getText()+"T"+fields[4].getText()+"',”'+fields[5].getText()+"T"+fields[6].getText()+"',”'+fields[7].getText()+"')";try{sql.execute(sqlString);JOptionPane.showMessageDialog(this,"操作成功!",”消息对话框”,JOptionPane」NFORMATION_MESSAGE);//更新表格中的数据for(inti=deModel.getRowCount()-1;i>=O;i--){deModel.removeRow(i);deModel.fireTableStructureChanged();}rs=sql.executeQuery("select*fromgoods");while(rs.next()){for(intj=0;j<8;j++){strings[j]=rs.getString(j+1);}deModel.addRow(strings);deModel.fireTableStructureChanged();〃更新中的数据}}catch(SQLExceptionee){ee.printStackTrace();}for(inti=0;i<8;i++){fields[i].setText("");}fields[0].requestFocus();〃设置光标的位置,在第一个文本框上面}elseif(e.getSource()==修改){try{rs=sql.executeQuery("select*fromgoods");while(rs.next()){for(inti=0;i<8;i++){strings[i]=rs.getString(i+1);}if(strings[1].trim().compareTo(inputText.getText().trim())==O){for(inti=0;i<8;i++){fields[i].setText(strings[i]);}}fields[O].setEditable(false);fields[1].setEditable(false);}catch(SQLExceptionee){ee.printStackTrace();}}elseif(e.getSource()==确认修改){StringsqlString="UPDATEgoodsSETshangpinhao="'+fields[O].getText()+"',shangpinming='"+fields[1].getText()+"',jinhuojia="'+fields[2].getText()+"',shouji="'+fields[3].getText()+"',zhekoujia="'+fields[4].getText()+"',yuliang="'+fields[5].getText()+"',yuliangyujingzhi="'+fields[6].getText()+"',gongyingshang="'+fields[7].getText()+"'whereshangpinming='"+inputText.getText()+""';try{sql.execute(sqlString);JOptionPane.showMessageDialog(this,"操作成功!",”消息对话框”,JOptionPane」NFORMATION_MESSAGE);//更新表格中的数据for(inti=deModel.getRowCount()-1;i>=O;i--){deModel.removeRow(i);deModel.fireTableStructureChanged();}rs=sql.executeQuery("select*fromgoods");while(rs.next()){for(intj=0;j<8;j++){strings[j]=rs.getString(j+1);}deModel.addRow(strings);deModel.fireTableStructureChanged();〃更新中的数据}}catch(SQLExceptionee){ee.printStackTrace();}for(inti=0;i<8;i++){fields[i].setText("");}fields[0].setEditable(true);fields[1].setEditable(true);inputText.setText("");fields[0].requestFocus();〃设置光标的位置,在第一个文本框上面elseif(e.getSource()==删除){StringsqlString="DELETEFROMgoodsWHEREshangpinming='"+inputText.getText().trim()+""';try{sql.execute(sqlString);//将表格中的内容清空for(inti=deModel.getRowCount()-1;i>=O;i--){deModel.removeRow(i);deModel.fireTableStructureChanged();}rs=sql.executeQuery("select*fromgoods");while(rs.next()){for(inti=0;i<8;i++){strings[i]=rs.getString(i+1);〃把查询的结果填入表格中}deModel.addRow(strings);deModel.fireTableStructureChanged();〃更新中的数据}JOptionPane.showMessageDialog(this,"操作成功!",”消息对话框”,JOptionPane」NFORMATION_MESSAGE);inputText.setText("");}catch(SQLExceptionee){ee.printStackTrace();}}elseif(e.getSource()==退出){this.dispose();}}}进入第二菜单(供应商管理界面):在此界面下可进行供应商的增删改查操作:设计代码如下:packagesource;importjava.awt.*;importjava.awt.event.*;importjava.sql.*;importjavax.swing.*;importjavax.swing.table.DefaultTableModel;importjava.util.Date;@SuppressWarnings("serial")publicclassSupplierManageextendsJFrameimplementsActionListener{JTabletable;JLabellabel;JTextFieldinputText;String[]name={"添加时间",”供应商",”联系电话","地址",”邮箱",”备注"};String[]strings=newString[6];JButton修改,删除,添加,退出,确认修改;JPanelp;JLabel[]labels=newJLabel[5];JTextField[]fields=newJTextField[5];BoxbaseBox,box1,box2;JSplitPanesplit;//拆分窗格DefaultTableModeldeModel=null;Connectioncon;Statementsql;ResultSetrs;Datedate;Stringdbdriver ="com.microsoft.sqlserver.jdbc.SQLServerDriver";Stringdburl="jdbc:sqlserver://localhost:1433;DatabaseName=LZS";Stringuser="sa";Stringpass="123";SupplierManage(){setLayout(newBorderLayout());init();Toolkittk=Toolkit.getDefaultToolkit();招聘Imageimg=tk.getImage("C:/DocumentsandSettings/Administrator/workspace/求职管理系统/picture/003.jpg");招聘setIconlmage(img);setTitle("供应商管理”);setBounds(130,80,960,600);;setResizable(false);try{Class.forName(dbdriver);}catch(ClassNotFoundExceptionclassnotfound){classnotfound.printStackTrace();}}voidinit()f修改=newJButton(”修改");删除=newJButton(”删除");添加=newJButton(”添加”);退出=newJButton(”退出");确认修改=newJButton(”确认修改”);label==newJLabel("请输入想要删除或修改的供应商inputText=newJTextField(6);修改.addActionListener(this);删除.addActionListener(this);添加.addActionListener(this);退出.addActionListener(this);确认修改.addActionListener(this);p=newJPanel();p.add(label);p.add(inputText);p.add(修改);p.add(删除);p.add(添加);p.add(退出);p.add(确认修改);add(p,BorderLayout.SOUTH);〃labels[O]=newJLabel("添加时间");labels[O]=newJLabel("供应商");labels[1]=newJLabel("联系电话");labels[2]=newJLabel("地址");labels[3]=newJLabel("邮箱");labels[4]=newJLabel("备注");for(inti=0;i<5;i++){fields[i]=newJTextField(20);}//用盒式容器装要录入的数据和标签box1=Box.createVerticalBox();box1.add(Box.createVerticalStrut(15));for(inti=0;i<5;i++){box1.add(labels[i]);box1.add(Box.createVerticalStrut(70));}box2=Box.createVerticalBox();box2.add(Box.createVerticalStrut(10));for(inti=0;i<5;i++){box2.add(fields[i]);box2.add(Box.createVerticalStrut(60));}baseBox=Box.createHorizontalBox();baseBox.add(box1);baseBox.add(Box.createHorizontalStrut(15));baseBox.add(box2);//添加表格add(baseBox,BorderLayout.EAST);deModel=newDefaultTableModel(name,0);table=newJTable(deModel);table.setCellSelectionEnabled(false);table.setEnabled(false);table.setShowHorizontalLines(true);table.setShowVerticalLines(true);//add(newJScrollPane(table),BorderLayout.CENTER);split=newJSplitPane(JSplitPane.HORIZONTAL_SPLIT,false,newJScrollPane(table),baseBox);split.setDividerLocation(0.5);add(split,BorderLayout.CENTER);StringsqlString="select*fromsupplier";try{//连接数据库con=DriverManager.getConnection(dburl,user,pass);System.out.println(”数据库连接成功r);sql=con.createStatement();rs=sql.executeQuery(sqlString);while(rs.next()){for(inti=0;i<6;i++){strings[i]=rs.getString(i+1);〃把查询的结果填入表格中}deModel.addRow(strings);deModel.fireTableStructureChanged();〃更新中的数据}}catch(SQLExceptionee){ee.printStackTrace();}}publicvoidactionPerformed(ActionEvente){if(e.getSource()==修改){try{rs=sql.executeQuery("select*fromsupplier");while(rs.next()){for(inti=0;i<6;i++){strings[i]=rs.getString(i+1);}if(strings[1].trim().compareTo(inputText.getText().trim())==O){for(inti=0;i<5;i++){fields[i].setText(strings[i+1]);}}}fields[0].setEditable(false);}catch(SQLExceptionee){ee.printStackTrace();}}elseif(e.getSource()==确认修改){StringsqlString="UPDATEsupplierSETgongyingshang="'+fields[O].getText()+"',lianxidianhua="'+fields[1].getText()+"',dizhi="'+fields[2].getText()+"',youxiang='"+fields[3].getText()+"',beizhu='"+fields[4].getText()+"'wheregongyingshang='"+inputText.getText()+""';try{sql.execute(sqlString);JOptionPane.showMessageDialog(this,"操作成功!",”消息对话框”,JOptionPane」NFORMATION_MESSAGE);//更新表格中的数据for(inti=deModel.getRowCount()-1;i>=O;i--){deModel.removeRow(i);deModel.fireTableStructureChanged();}rs=sql.executeQuery("select*fromsupplier");while(rs.next()){for(intj=0;j<6;j++){strings[j]=rs.getString(j+1);}deModel.addRow(strings);deModel.fireTableStructureChanged();〃更新中的数据}fields[0].setEditable(true);}catch(SQLExceptionee){ee.printStackTrace();}for(inti=0;i<5;i++){fields[i].setText("");}inputText.setText("");fields[0].requestFocus();〃设置光标的位置,在第一个文本框上面}elseif(e.getSource()==删除){StringsqlString="DELETEFROMsupplierWHEREgongyingshang='"+inputText.getText()+""';try{sql.execute(sqlString);//将表格中的内容清空for(inti=deModel.getRowCount()-1;i>=O;i--){deModel.removeRow(i);deModel.fireTableStructureChanged();rs=sql.executeQuery("select*fromsupplier");while(rs.next()){for(inti=0;i<6;i++){strings[i]=rs.getString(i+1);〃把查询的结果填入表格中}deModel.addRow(strings);deModel.fireTableStructureChanged();〃更新中的数据}JOptionPane.showMessageDialog(this,"操作成功!",”消息对话框”,JOptionPane」NFORMATION_MESSAGE);inputText.setText("");}catch(SQLExceptionee){ee.printStackTrace();}}elseif(e.getSource()==添加){date=newDate();StringsqlString="INSERTINTOsupplierVALUES('"+date+"','"+fields[0].getText()+"','"+fields[1].getText()+"','"+fields[2].getText()+"','"+fields[3].getText()+"','"+fields[4].getText()+"')";try{sql.execute(sqlString);JOptionPane.showMessageDialog(this,"操作成功!",”消息对话框",JOptionPane」NFORMATION_MESSAGE);//更新表格中的数据for(inti=deModel.getRowCount()-1;i>=O;i--){deModel.removeRow(i);deModel.fireTableStructureChanged();}rs=sql.executeQuery("select*fromsupplier");while(rs.next()){for(intj=0;j<6;j++){strings[j]=rs.getString(j+1);}deModel.addRow(strings);deModel.fireTableStructureChanged();〃更新中的数据}}catch(SQLExceptionee){ee.printStackTrace();}for(inti=0;i<5;i++){fields[i].setText("");}inputText.setText("");fields[0].requestFocus();〃设置光标的位置,在第一个文本框上面}elseif(e.getSource()==退出){this.dispose();}}importjava.awt.*;importjava.awt.event.*;importjavax.swing.*;importjavax.swing.table.DefaultTableModel;importjava.sql.*;@SuppressWarnings("serial")publicclassplanextendsJFrameimplementsActionListener{JButton添加删除,退出;JTabletable;//表JLabellabel;//JTextFieldinputText;DefaultTableModeldeModel=null;JSplitPanesplit;//拆分窗格JTextField[]text=newJTextField[2];〃用于填写签约信息的文本框String[]name={"日期","商品名","供应商",”操作","数量"};Stringstrings[]=newString[5];JPanelp1,p3;//二个面板JLabel[]labels=newJLabel[5];JComboBoxchoice1,choice2,choice3,inputText;Connectioncon;Statementsql;ResultSetrs;Stringdbdriver="com.microsoft.sqlserver.jdbc.SQLServerDriver";Stringdburl="jdbc:sqlserver://localhost:1433;DatabaseName=LZS";Stringuser="sa";Stringpass="123";BoxbaseBox,box1,box2;〃盒式布局plan(){setLayout(newBorderLayout());init();Toolkittk=Toolkit.getDefaultToolkit();Imageimg=tk.getImage("e:/java文件/SuperMarket/picture/1.jpg");setIconlmage(img);setTitle("进货计划");setBounds(130,80,960,600);;setResizable(false);try{Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");}catch(ClassNotFoundExceptionclassnotfound){classnotfound.printStackTrace();}}voidinit(){添加=newJButton(”添加”);删除=newJButton(”删除");退出=newJButton(”退出");添加.addActionListener(this);删除.addActionListener(this);退出.addActionListener(this);choice仁newJComboBox();choice2=newJComboBox();choice3=newJComboBox();inputText=newJComboBox();label=newJLabel("请输入想要删除的日期:");//inputText=newJTextField(6);p1=newJPanel();p1.add(label);p1.add(inputText);p1.add(添加);p1.add(删除);p1.add(退出);add(p1,BorderLayout.SOUTH);labels[0]=newJLabel("日期");labels[1]=newJLabel("商品名");labels[2]=newJLabel("供应商");labels[3]=newJLabel("操作");labels[4]=newJLabel("数量");for(inti=0;i<2;i++){text[i]=newJTextField(20);}choice3.addItem("计划");choice3.addItem("已预定");//用盒式容器装要录入的数据和标签box1=Box.createVerticalBox();box1.add(Box.createVerticalStrut(20));for(inti=0;i<5;i++){box1.add(labels[i]);box1.add(Box.createVerticalStrut(70));}box2=Box.createVerticalBox();box2.add(Box.createVerticalStrut(20));box2.add(text[0]);box2.add(Box.createVerticalStrut(60));box2.add(choice1);box2.add(Box.createVerticalStrut(60));box2.add(choice2);box2.add(Box.createVerticalStrut(60));box2.add(choice3);box2.add(Box.createVerticalStrut(60));box2.add(text[1]);box2.add(Box.createVerticalStrut(60));baseBox=Box.createHorizontalBox();baseBox.add(boxl);baseBox.add(Box.createHorizontalStrut(15));baseBox.add(box2);add(baseBox,BorderLayout.EAST);//添加表格//添加表格deModel=newDefaultTableModel(name,0);table=newJTable(deModel);table.setCellSelectionEnabled(true);table.setEnabled(true);table.setShowHorizontalLines(true);table.setShowVerticalLines(true);split=newJSplitPane(JSplitPane.HORIZONTAL_SPLIT,false,newJScrollPane(table),baseBox);split.setDividerLocation(0.5);add(split,BorderLayout.CENTER);StringsqlString="select*fromrecord";try{//连接数据库con=DriverManager.getConnection(dburl,user,pass);sql=con.createStatement();JOptionPane.showMessageDialog(this,"数据库连接成功!",”消息对话框",JOptionPane」NFORMATION_MESSAGE);rs=sql.executeQuery(sqlString);while(rs.next()){for(inti=0;i<5;i++){strings[i]=rs.getString(i+1);〃把查询的结果填入表格中}if(strings[3].trim().compareTo("计划")==0||strings[3].trim().compareTo("已预定")==0){inputText.addItem(strings[0]);deModel.addRow(strings);deModel.fireTableStructureChanged();}〃更新中的数据}rs=sql.executeQuery("select*fromgoods");while(rs.next()){for(inti=0;i<5;i++){strings[i]=rs.getString(i+1);〃把查询的结果填入表格中}choice1.addItem(strings[1]);}rs=sql.executeQuery("select*fromsupplier");while(rs.next()){for(inti=0;i<5;i++){strings[i]=rs.getString(i+1);〃把查询的结果填入表格中}choice2.addltem(strings[1]);}}catch(SQLExceptionee){ee.printStackTrace();}}publicvoidactionPerformed(ActionEvente){if(e.getSource()==添加){StringsqlString="INSERTINTOrecordVALUES("'+text[0].getText()+"',"'+choice1.getSelectedltem().toString()+"',"'+choice2.getSelectedltem().toString()+"',”'+choice3.getSelectedltem().toString()+"',”'+text[1].getText()+"')";try{sql.execute(sqlString);//将表格中的内容清空for(inti=deModel.getRowCount()-1;i>=O;i--){deModel.removeRow(i);deModel.fireTableStructureChanged();}rs=sql.executeQuery("select*fromrecord");while(rs.next()){for(inti=0;i<5;i++){strings[i]=rs.getString(i+1);〃把查询的结果填入表格中}if(strings[3].trim().compareTo("计戈U")==0||strings[3].trim().compareTo("已预定")==0){deModel.addRow(strings);deModel.fireTableStructureChanged();}〃更新中的数据}JOptionPane.showMessageDialog(this,"操作成功!",”消息对话框”,JOptionPane」NFORMATION_MESSAGE);}catch(SQLExceptionee){ee.printStackTrace();}for(inti=0;i<2;i++){text[i].setText(””);}elseif(e.getSource()==删除){StringsqlString="DELETEFROMrecordwhereriqi='"+inputText.getSelectedltem().toString().trim()+""';try{sql.execute(sqlString);//将表格中的内容清空for(inti=deModel.getRowCount()-1;i>=O;i--){deModel.removeRow(i);deModel.fireTableStructureChanged();}rs=sql.executeQuery("select*fromrecord");while(rs.next()){for(inti=0;i<5;i++){strings[i]=rs.getString(i+1);〃把查询的结果填入表格中}if(strings[3].trim().compareTo("计划")==0||strings[3].trim().compareTo("已预定")==0){deModel.addRow(strings);deModel.fireTableStructureChanged();}〃更新中的数据}JOptionPane.showMessageDialog(this,"操作成功!","消息对话框”,JOptionPane」NFORMATION_MESSAGE);}catch(SQLExceptionee){ee.printStackTrace();}}elseif(e.getSource()==退出){this.dispose();}}}进货计划设计如下:packagesource;importjava.awt.*;importjava.text.SimpleDateFormat;importjava.awt.event.*;importjavax.swing.*;importjavax.swing.table.DefaultTableModel;importjava.sql.*;importjava.util.Date;@SuppressWarnings("serial")publicclassrecordextendsJFrameimplementsActionListener{JButton修改,添加删除,退出,确认修改;JTabletable;//表//JTextFieldinputText;DefaultTableModeldeModel=null;JSplitPanesplit;//拆分窗格JTextField[]text=newJTextField[2];〃用于填写签约信息的文本框String[]name={"日期","供应商","商品名",”操作","数量"};JComboBoxchoice1,choice2,choice3,inputText;Stringstrings[]=newString[5];JPanelp1,p3;〃二个面板JLabel[]labels=newJLabel[5];Connectioncon;Statementsql;ResultSetrs;Datedate;SimpleDateFormatmatter1;BoxbaseBox,box1,box2;〃盒式布局Stringdbdriver="com.microsoft.sqlserver.jdbc.SQLServerDriver";Stringdburl="jdbc:sqlserver://localhost:1433;DatabaseName=LZS";Stringuser="sa";Stringpass="123";record。{setLayout(newBorderLayout());init();Toolkittk=Toolkit.getDefaultToolkit();Imageimg=tk.getlmage("e:Java文件/SuperMarket/picture/2.jpg");setIconlmage(img);setTitle("库存记录");setBounds(130,80,960,600);;setResizable(false);try{Class.forName(dbdriver);}catch(ClassNotFoundExceptionclassnotfound){classnotfound.printStackTrace();}}voidinit(){JLabellabel;修改=newJButton(”修改");添加=newJButton(”添加”);删除=newJButton(”删除");退出=newJButton(”退出");确认修改=newJButton(”确认修改”);choice1=newJComboBox();choice2=newJComboBox();choice3=newJComboBox();inputText=newJComboBox();label=newJLabel("请输入想要修改的日期: ”);修改.addActionListener(this);添加.addActionListener(this);删除.addActionListener(this);退出.addActionListener(this);确认修改.addActionListener(this);//inputText=newJTextField(6);pl=newJPanel();p1.add(label);p1.add(inputText);p1.add(修改);p1.add(添加);//p1.add(删除);p1.add(退出);p1.add(确认修改);add(p1,BorderLayout.SOUTH);labels[0]=newJLabel("日期");labels[1]=newJLabel("商品名");labels[2]=newJLabel("供应商");labels[3]=newJLabel("操作");labels[4]=newJLabel("数量");for(inti=0;i<2;i++){text[i]=newJTextField(20);}choice3.addItem("入库");choice3.addItem("出库");text[O].setEditable(false);//用盒式容器装要录入的数据和标签box1=Box.createVerticalBox();box1.add(Box.createVerticalStrut(20));for(inti=0;i<5;i++){box1.add(labels[i]);box1.add(Box.createVerticalStrut(70));}box2=Box.createVerticalBox();box2.add(Box.createVerticalStrut(20));box2.add(text[0]);box2.add(Box.createVerticalStrut(60));box2.add(choice1);box2.add(Box.createVerticalStrut(60));box2.add(choice2);box2.add(Box.cre

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论