java超市综合管理系统优秀课程设计优质报告.docx
《java超市综合管理系统优秀课程设计优质报告.docx》由会员分享,可在线阅读,更多相关《java超市综合管理系统优秀课程设计优质报告.docx(122页珍藏版)》请在咨信网上搜索。
湖 南 文 理 学 院 课程设计题目: 超市管理系统 系 别 计算机科学和技术 班 级 计科12102 学生姓名 罗巍 杨欢 杨沁铠 唐振 学 号 17010223 指导老师 谭文学 课程设计进行地点: 第三试验楼A617 任 务 下 达 时 间: 年 5 月 21 日 起止日期: 年 5 月 21 日起——至 年 6月 21 日止 摘 要 伴随小型超市规模发展不停扩大,商品数量急剧增加,相关商品多种信息量也成倍增加,传统人工记忆方法也慢慢无法适应形势改变。伴随信息技术发展,计算机已被广泛用于社会各个领域,成为推进社会发展技术动力。而在计算机应用中,软件作用十分突出,软件已经发展成为信息技术关键,主导着信息产品开发和信息技术市场深入开拓。软件产业已成为社会信息化进程中一个战略性产业。在软件技术应用中软件开发技术尤其是应用型软件产品开发技术成了重中之重。不停开发适应用户需求、市场需要新型软件产品。伴随社会发展,软件也在不停更新换代。 因为有些超市里对商品进货、售出及商品基础信息等部分繁琐处理全部是经过手工进行记载并进行处理,对商品信息处理工作量尤其大,不仅浪费大量人力物力,而且还很轻易犯错,更关键是为了方便用户,超市需要时时刻刻对商品对多种信息进行统计分析。 一直以来大家使用传统人工方法管理超市各项工作, 这种管理方法存在着很多缺点, 如: 效率低、保密性差, 另外时间一长, 将产生大量冗余文件和数据, 这给查找、统计、更新和维护工作全部带来了很大困难。然而大型超市管理系统功效过于强大而造成操作繁琐降低了小超市工作效率。假如有这么一套完整小型超市管理系统软件,只需点击几下鼠标就可完成所需操作,那样就会大大提升超市职员工作效率和管理水平,并能深入提升超市工作效率并使超市实施规范化管理。鉴于小型超市管理中存在很多问题, 我们在此次课程设计中以小型超市管理系统为研究课题,对此系统进行了全方面设计。 超市管理系统由用户、采购员、销售员、经理管理界面四部分组成。 超市管理系统应该能够为用户提供充足信息和快捷查询手段。 一个完整系统设计,当然就离不开后台环境支持,在此次设计中,我们关键以sqlsever数据库作为基础,实施此系统开发。 目 录 一、系统需求分析 - 1 - 1.1系统名称: - 1 - 1.2系统介绍: - 1 - 1.3开发背景 - 1 - 1.4.系统面向用户群体 - 1 - 1.5开发环境 - 1 - 二、系统总体设计 - 2 - 2.1系统功效结构图 - 2 - 三、系统具体设计 - 2 - 3.1数据库实体E-R图设计 - 2 - 3.2数据库表设计 - 4 - 3.3物理设计文档 - 6 - 3.4具体设计 - 10 - 四、系统总结 - 20 - 五、系统设计心得体会 - 21 - 六、参考文件 - 21 - 一、系统需求分析 1.1系统名称: 小型超市管理系统 1.2系统介绍: 界面设计简练、友好、美观大方 操作简单、快捷方便 数据存放安全、可靠 信息分类清楚、正确 强大查询功效、确保数据查询灵活性 提供销售排行,为管理员提供真实数据信息 提供灵活、方便权限设置功效,使整个系统管理分工明确 对用户输入数据,系统进行严格数据检验,尽可能排人为错误 1.3开发背景 伴随现代科学技术迅猛发展,计算机技术已经渗透到各个领域,成为各行业必不可少工具,尤其是Internet技术推广和信息高速公路建立,使IT产业在市场竞争中越发显示出其独特优势,步入信息化时代,有巨大数据信息等候加工处理和传输,这使得对数据库深入开发和利用显得尤为迫切。 作为中国市场部分中小型超市,它们在信息化过程中步伐要落后于大中型超市,而对于这些企业资源管理,信息存放和处理也显得迫切需要,要适应市场竞争,就需要有高效处理方法和管理方法,所以加紧超市信息化进程是必不可少。 中国超市在20世纪90年代早期形成,现在已经成为中国零售业一个关键形态,为国民经济发展发挥了关键作用。伴随经济快速发展,超市经营管理也变得愈加复杂,早期售货员站柜台形式早已不能满足现有销售业发展,这么就迫切地需要引入新管理技术。 1.4.系统面向用户群体 关键是中小型超市使用者,该消费群体含有以下特征:1超市日常管理人工化居多,工作效率较低;2超市日常交易额较小,货物流通较小,不愿花高价购进大型超市管理系统。所以,该消费群体对产品功效性需求并不高,只需满足前台销售系统、后台货物管理即可。 1.5开发环境 Eclipse+mysql 二、系统总体设计 2.1系统功效结构图 小超市管理系统是一个专门针对小型商店和超市智能化、自动化管理系统。其功效总框图图2-1所表示。 用户注册 登陆界面 采购员登陆 用户登陆 经理登录 销售员登陆 分项查询 增加订单 更改订单 查看销售信息 查看进货信息 购置商品 查看销售员信息 查看全部订单 浏览某种商品 浏览全部商品 图2-1 系统功效总框图 三、系统模块功效介绍 3.1 登录功效介绍 登录功效是进入系统必需经过验证过程,其关键功效是验证使用者身份,确定使用者权限,从而在使用软件过程中能安全地控制系统数据,即不一样工作人员有不一样权限,每个使用人员不得跨越其权限操作软件,能够避免无须要数据丢失事件发生。 登录界面图2-2所表示 登陆成功!!! 3.1.1登陆界面源代码 package uml_supermarket; import java.awt.*; import javax.swing.*; import com.borland.jbcl.layout.*; import java.awt.event.*; import com.borland.dx.sql.dataset.*; import java.sql.*; import javax.swing.border.*; /** * <p>Title: </p> * <p>Description: </p> * <p>Copyright: Copyright (c) </p> * <p>Company: </p> * @author unascribed * @version 1.0 */ public class Logincs extends JDialog implements ActionListener{ //申明在程序中要用到方法 private JPanel panel1 = new JPanel(); private BorderLayout borderLayout1 = new BorderLayout(); private JPanel jPanel1 = new JPanel(); private XYLayout xYLayout1 = new XYLayout(); private JLabel jLabel1 = new JLabel();//添加一个标签控件 private JLabel jLabel2 = new JLabel(); private JTextField jTextField1 = new JTextField();//添加一个文本框 private JButton jButton1 = new JButton();//添加一个按钮控件 private JButton jButton2 = new JButton(); private JPasswordField jPasswordField1 = new JPasswordField(); private Database database1 = new Database(); private JLabel jLabel3 = new JLabel(); private JLabel jLabel4 = new JLabel(); private JLabel jLabel5 = new JLabel(); private TitledBorder titledBorder1; private TitledBorder titledBorder2; private JLabel jLabel6 = new JLabel(); public Logincs(Frame frame, String title, boolean modal) { super(frame, title, modal); try { jbInit(); pack(); } catch(Exception ex) { ex.printStackTrace(); } } public Logincs() { this(null, "", false); } private void jbInit() throws Exception { titledBorder1 = new TitledBorder(""); titledBorder2 = new TitledBorder(""); panel1.setLayout(borderLayout1); jPanel1.setLayout(xYLayout1); jLabel1.setForeground(Color.blue);//标签控件字体颜色 jLabel1.setText("用户名"); //标签标题 jLabel2.setForeground(Color.blue); jLabel2.setText("密码"); jButton1.setForeground(UIManager.getColor("List.selectionBackground"));//按钮控件字体颜色 jButton1.setBorder(BorderFactory.createRaisedBevelBorder());//按钮外观 jButton1.setText("登录");//按钮标题 jButton1.addActionListener(this);//加入按钮事件 jButton2.setForeground(UIManager.getColor("Menu.selectionBackground")); jButton2.setBorder(BorderFactory.createRaisedBevelBorder()); jButton2.setToolTipText(""); jButton2.setText("取消"); jButton2.addActionListener(this); jPanel1.setBorder(BorderFactory.createEtchedBorder()); jPanel1.setMinimumSize(new Dimension(600, 600));//设置面板大小 jPanel1.setPreferredSize(new Dimension(400, 325)); jPasswordField1.setBorder(titledBorder1); jPasswordField1.setToolTipText(""); database1.setConnection(new com.borland.dx.sql.dataset.ConnectionDescriptor("jdbc:odbc:supermarket", "sa", "123", false, "sun.jdbc.odbc.JdbcOdbcDriver")); this.setResizable(false); this.setTitle("登录"); jLabel3.setBackground(Color.yellow);//标签背景颜色 jLabel3.setForeground(Color.black); jLabel3.setBorder(BorderFactory.createEtchedBorder()); jLabel3.setText(" 小型超市管理系统"); jLabel4.setBorder(BorderFactory.createEtchedBorder()); jLabel4.setText(" ——制作人:L,T,Y,Y"); jLabel5.setBorder(BorderFactory.createEtchedBorder()); jLabel5.setToolTipText(""); jLabel5.setText("——版本号: .5.30"); jTextField1.setBorder(titledBorder2); jLabel6.setBorder(BorderFactory.createEtchedBorder()); getContentPane().add(panel1); panel1.add(jPanel1, BorderLayout.WEST); jPanel1.add(jLabel3, new XYConstraints(-1, 0, 395, 30)); jPanel1.add(jLabel5, new XYConstraints(274, 30, 121, 32)); jPanel1.add(jLabel4, new XYConstraints(127, 32, 143, 30)); jPanel1.add(jPasswordField1, new XYConstraints(143, 196, 132, 24)); jPanel1.add(jTextField1, new XYConstraints(143, 136, 132, 24)); jPanel1.add(jLabel2, new XYConstraints(23, 195, 60, 25)); jPanel1.add(jLabel1, new XYConstraints(23, 134, 60, 25)); jPanel1.add(jLabel6, new XYConstraints(-2, 65, 396, 191)); jPanel1.add(jButton1, new XYConstraints(90, 274, 68, 28)); jPanel1.add(jButton2, new XYConstraints(193, 275, 69, 28)); } public void actionPerformed(ActionEvent e){ String driverName="com.microsoft.jdbc.sqlserver.SQLServerDriver"; String dbURL="jdbc:sqlserver://localhost:1433;DatabaseName=supermarket"; String userName="sa"; //默认用户名 String userPwd="123"; //密码 Statement stmt=null; ResultSet rs =null; Connection dbConn=null; if(e.getSource() == jButton1) //得到界面单击事件 { try{ String userAuthority = null ; // String userName = null ; String userPassword = null ; String testName = jTextField1.getText().toString() ;//从jTextField1中得到用户名 String testPassword = String.valueOf(jPasswordField1.getPassword()) ;//从jPassword中得到用户密码 //Statement sql = database1.createStatement() ; //打开Statement对象 try { Class.forName(driverName).newInstance(); } catch (InstantiationException e1) { // TODO Auto-generated catch block e1.printStackTrace(); } catch (IllegalAccessException e1) { // TODO Auto-generated catch block e1.printStackTrace(); } catch (ClassNotFoundException e1) { // TODO Auto-generated catch block e1.printStackTrace(); } dbConn=DriverManager.getConnection(dbURL,userName,userPwd); stmt = dbConn.createStatement(); rs = stmt.executeQuery("SELECT userName,userPassword , userAuthority FROM T_user WHERE userName = '"+testName+"'") ; //实施SQL语句,从数据库当中选择用户名,密码,和权限。 while(rs.next()) // { userName = rs.getString("userName") ; //从数据库当中得到用户名 userPassword = rs.getString("userPassword") ;//从数据库当中得到密码 userAuthority = rs.getString("userAuthority") ;//从数据库当中得到权限 } verifyUser(userName,userPassword,testPassword,userAuthority); //调用verifyUser方法 cancel() ;//退出 } catch(SQLException ex){ex.printStackTrace();} } //exit the System else if(e.getSource() == jButton2){ cancel(); } } void cancel() { dispose(); } //验证用户名和密码 void verifyUser(String userName , String userPassword , String testPassword, String userAuthority) { if(userName == null) //判定用户名是否为空 { JOptionPane.showMessageDialog(null,"用户名不存在,请先注册","verify user",JOptionPane.DEFAULT_OPTION); //抛出对话框 } else { if(userPassword.equals(testPassword) == false) //判定密码是否相等 { JOptionPane.showMessageDialog(null,"您输入密码不正确,请重试","verify password" , JOptionPane.DEFAULT_OPTION); //抛出对话框 } else{ JOptionPane.showMessageDialog(null,"success","",JOptionPane.DEFAULT_OPTION); // verifyUserAuthority(userAuthority) ;//进行权限判定 } } } //验证用户权限 void verifyUserAuthority(String userAuthority){ if(userAuthority.equals("admin"))//假如用户为admin,则弹出管理员界面 { AdminWindow adminWindow = new AdminWindow() ; //设置对话框 Dimension dlgSize = adminWindow.getPreferredSize(); Dimension frmSize = getSize(); Point loc = getLocation(); adminWindow.setLocation((frmSize.width - dlgSize.width) / 2 + loc.x, (frmSize.height - dlgSize.height) / 2 + loc.y); adminWindow.setModal(true); adminWindow.pack(); adminWindow.show();//显示对话框 } else if (userAuthority.equals("customer"))//假如用户为customer //弹出用户登录界面 { CustomerWindow customerWindow =new CustomerWindow() ; //设置对话框大小 Dimension dlgSize = customerWindow.getPreferredSize(); Dimension frmSize = getSize(); Point loc = getLocation(); customerWindow.setLocation((frmSize.width - dlgSize.width) / 2 + loc.x, (frmSize.height - dlgSize.height) / 2 + loc.y); customerWindow.setModal(true); customerWindow.pack(); customerWindow.show(); } else if (userAuthority.equals("buyer")) { BuyerWindow buyerWindow =new BuyerWindow() ; Dimension dlgSize = buyerWindow.getPreferredSize(); Dimension frmSize = getSize(); Point loc = getLocation(); buyerWindow.setLocation((frmSize.width - dlgSize.width) / 2 + loc.x, (frmSize.height - dlgSize.height) / 2 + loc.y); buyerWindow.setModal(true); buyerWindow.pack(); buyerWindow.show(); } else if (userAuthority.equals("saler")){ SalesWindow salesWindow =new SalesWindow() ; Dimension dlgSize = salesWindow.getPreferredSize(); Dimension frmSize = getSize(); Point loc = getLocation(); salesWindow.setLocation((frmSize.width - dlgSize.width) / 2 + loc.x, (frmSize.height - dlgSize.height) / 2 + loc.y); salesWindow.setModal(true); salesWindow.pack(); salesWindow.show(); } else if (userAuthority.equals("manager")){ ManagementWindow managementWindow =new ManagementWindow() ; Dimension dlgSize = managementWindow.getPreferredSize(); Dimension frmSize = getSize(); Point loc = getLocation(); managementWindow.setLocation((frmSize.width - dlgSize.width) / 2 + loc.x, (frmSize.height - dlgSize.height) / 2 + loc.y); managementWindow.setModal(true); managementWindow.pack(); managementWindow.show(); } } } 3.2 用户注册界面 注册成功!!!!! 3.2.2用户注册源代码 package uml_supermarket; import java.awt.*; import javax.swing.*; import com.borland.jbcl.layout.*; import java.awt.event.*; //import com.borland.dx.sql.dataset.*; import java.sql.*; /** * <p>Title: </p> * <p>Description: </p> * <p>Copyright: Copyright (c) </p> * <p>Company: </p> * @author unascribed * @version 1.0 */ public class Registration extends JDialog implements ActionListener { String driverName="com.microsoft.jdbc.sqlserver.SQLServerDriver"; String dbURL="jdbc:sqlserver://localhost:1433;DatabaseName=supermarket"; String userName="sa"; //默认用户名 String userPwd="123"; //密码 Statement stmt=null; ResultSet rs =null; Connection dbConn=null; private JPanel panel1 = new JPanel(); private BorderLayout borderLayout1 = new BorderLayout(); private JPanel jPanel1 = new JPanel(); private XYLayout xYLayout1 = new XYLayout(); private JLabel jLabel1 = new JLabel(); private JLabel jLabel2 = new JLabel(); private JLabel jLabel3 = new JLabel(); private JLabel jLabel4 = new JLabel(); private JTextField jTextField1 = new JTextField(); private JTextField jTextField2 = new JTextField(); private JTextField jTextField3 = new JTextField(); private JTextField jTextField4 = new JTextField(); private JLabel jLabel5 = new JLabel(); private JLabel jLabel6 = new JLabel(); private JLabel jLabel7 = new JLabel(); private JTextField jTextField5 = new JTextField(); private JPasswordField jTextField6 = new JPasswordField(); private JPasswordField jTextField7 = new JPasswordField(); private JButton jButton1 = new JButton(); private JButton jButton2 = new JButton(); public Registration(Frame frame, String title, boolean modal) { super(frame, title, modal); try { jbInit(); pack(); } catch(Exception ex) { ex.printStackTrace(); } } public Registration() { this(null, "", false); } private void jbInit() throws Exception { panel1.setLayout(borderLayout1); jPanel1.setLayout(xYLayout1); jLabel1.setText("姓名"); jLabel2.setText("年纪"); jLabel3.setText("性别"); jLabel4.setText("类别"); jLabel5.setText("请输入密码"); jLabel6.setText("请再输一遍"); jLabel7.setText("家庭住址"); jButton1.setText("确定"); jButton1.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(ActionEvent e) { jButton1_actionPerformed(e); } }); jButton2.setText("取消"); jButton2.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(ActionEvent e) { jButton2_actionPerformed(e); } }); jPanel1.setPreferredSize(new Dimensio- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- java 超市 综合 管理 系统 优秀 课程设计 优质 报告
咨信网温馨提示:
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【精***】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【精***】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【精***】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【精***】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
关于本文