ImageVerifierCode 换一换
格式:DOC , 页数:26 ,大小:733.04KB ,
资源ID:2658691      下载积分:10 金币
快捷注册下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

开通VIP
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.zixin.com.cn/docdown/2658691.html】到电脑端继续下载(重复下载【60天内】不扣币)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

开通VIP折扣优惠下载文档

            查看会员权益                  [ 下载后找不到文档?]

填表反馈(24小时):  下载求助     关注领币    退款申请

开具发票请登录PC端进行申请

   平台协调中心        【在线客服】        免费申请共赢上传

权利声明

1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前可先查看【教您几个在下载文档中可以更好的避免被坑】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时联系平台进行协调解决,联系【微信客服】、【QQ客服】,若有其他问题请点击或扫码反馈【服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【版权申诉】”,意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:0574-28810668;投诉电话:18658249818。

注意事项

本文(JAVA专业课程设计企业销售标准管理系统.doc)为本站上传会员【天****】主动上传,咨信网仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知咨信网(发送邮件至1219186828@qq.com、拔打电话4009-655-100或【 微信客服】、【 QQ客服】),核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载【60天内】不扣币。 服务填表

JAVA专业课程设计企业销售标准管理系统.doc

1、序号: 10 学号: 11416230 常 州 大 学 课程设计 课 程 名 称: 《面向对象程序设计(JAVA)》 题 目: 企业销售管理系统 姓 名: ````````` 学 院: 信息科学和工程学院 专业班级: ``````` 指 导 教 师: ``````

2、 设计时间: 年 12 月 24 日 ~ 年 1 月 11 日 目录 1. 任务书 a) 系统功效分析········································03 b) 系统组成············································03 2. 正文 a) 系统分析 i. 功效模块·········································04 ii. 功效步骤图·······································06 b) 数据库设计····

3、······································07 c) 系统具体设计 i. 连接数据库·······································08 ii. 主界面···········································08 iii. 修改、添加、删除模块·····························10 iv. 查询、打印、登录模块·····························14 3. 系统使用说明······································

4、·····21 4. 日志···················································22 5. 心得体会···············································22 6. 参考文件···············································23 7. 致谢···················································23 一、任务书 (一)、系统功效分析 本系统用于对企业销售进行管理,包含职员基础信息表、商品信息

5、表和职员销售信息表,关键功效包含: l 数据表统计添加、删除、修改和浏览。 l 对职员基础情况、商品和销售相关信息查询。 l 报表打印输出。 l 系统退出。 (二)、系统组成 依据系统功效分析,给出系统参考处理方案。 整个系统功效经过菜单实现,包含数据库、表单、菜单、报表和主程序等多个部分,具体为: 后台数据库 销售管理数据库: 1.职员基础信息表(职员编号,职员名,年纪,性别,部门,职务)。 2. 商品信息表 (商品编号,商品名称,商品单价)。 3. 职员销售信息表 (职员编号, 商品编号,商品数目,应付金额,用户付款,找回金额)。

6、 二、正文 (1) 系统分析: 企业销售管理系统关键实现功效为:和数据库连接,实施对职员基础信息表、商品信息表、职员销售信息表查询、修改、添加、删除等功效实现。和对3张表信息进行输出打印,打印保留成XLS格式。 功效模块以下: 查询功效: 模糊查找 正确查找 查询功效 其它模糊查找 金额模糊查找 数目模糊查找 名称模糊查找 编号模糊查找 名称查找 编号查找 添加其它 添加数目 添加编号 添加名称 添加

7、功效 添加功效: 修改功效: 保留退出 修改功效 修改其它 修改数目 修改编号 修更名称 查询数据 删除功效: 删除功效 查询数据 确定删除 保留退出 程序结构步骤图: 企业销售管理系统 职员基础信息表 商品信息表 职员销售信息表 查询 修改 添加 删除 查询 修改 添加 添加 修改 删除 输出打印 系统

8、退出 (2)数据库设计: 根据规范设计方法,考虑数据库及其管理系统开发全过程,将数据库设计分为以下六个阶段:   · 需求分析   · 概念结构设计   · 逻辑结构设计   · 物理结构设计   · 数据库实施 · 数据库运行和维护 基础要求 在mysql软件基础上,利用应用系统开发为企业销售管理设计数据库和建立对应数据库。创建4个表格,分别为sellInfo,staffInfo,goodsInfo,和登录所需password表格。 信息要求,处理要求,安全性和 完整性要求,数据流图,数据字

9、典,数据项之间应有联络必需表示出来,用数据依靠表示即可逻辑结构设计必需:说明各个关系模式所属范式,假如不是BC或3NF范式, (3)系统具体设计: 一、 连接数据库: import java.sql.*; public class Connection1 { Connection connect; private String dbDriver = "com.mysql.jdbc.Driver"; //加载数据库驱动 private String url = "jdbc:mysql://localhost:3306/sell

10、true&characterEncoding=utf-8"; // 地址 /** Creates a new instance of connectJdbc */ public Connection getConnection() { try { Class.forName(dbDriver).newInstance(); connect=DriverManager.getConnection(url, "root", "123456"); } catch (Exception ex) {

11、System.out.println("数据库加载失败"); } return connect; } 二、 主界面:View.java 首先在主界面panel里显示数据库中数据,以商品信息表为例。 JTable table; JScrollPane jscrollpane;//申明滚动面板变量 TableModel myTable = new DefaultTableModel(); Connection1 db = new Connection1(); Connection con = db.getConnectio

12、n();//连接到数据库 Statement ps; try { ps = con.createStatement(); ResultSet rs; rs = ps.executeQuery("select * from goodsInfo");//在sell表格中实施查询 ResultSetMetaData metaData; metaData = rs.getMetaData();//得到数据库元数据 int number = metaData.getColumnCount();//得到数据库中表列个数 Vector co

13、lumnNames = new Vector();//调用Vector类,生成可自动增加数组对象列 Vector rows = new Vector();//对象行 for (int num = 0; num < number; num++) { columnNames.addElement(metaData.getColumnLabel(num + 1)); }//循环生成 while (rs.next()) { Vector newRow = new Vector(); /* for循环,将结果集中一行数据放到newRow矢量中 */

14、 for (int i = 1; i <= number; i++) { newRow.addElement(rs.getObject(i)); }/* 将上面矢量newRow作为矢量rows中一个元素,这么rows中一个元素就代表结果集中一行数据 */ rows.addElement(newRow);//增加行 myTable = new DefaultTableModel(rows, columnNames);//在表格中加载数据 } } catch (SQLException ex) { } table = n

15、ew JTable(myTable); jscrollpane = new JScrollPane(table); jscrollpane.setViewportView(table); jscrollpane.revalidate(); jPanel3.setLayout(new BorderLayout()); jPanel3.add(jscrollpane, BorderLayout.CENTER); jPanel3.setVisible(true); 效果以下: 三、修改模块: 首先对所需修改职员信息进行查询,并显示

16、在修改界面上,关键代码以下: Connection1 db = new Connection1(); Connection con = db.getConnection();//连接数据库 String sql = "select* from sellInfo"; Statement ps = con.createStatement(); ResultSet rs = ps.executeQuery(sql);//查询 while (rs.next()) { if (rs.getString("职员编号").equals(jTextField1.

17、getText())) { //匹配该职员信息; num1 = rs.getString("职员编号"); num2 = rs.getString("商品编号"); num3 = rs.getInt("商品数目"); price1 = rs.getInt("应付金额(元)"); price2 = rs.getInt("用户付款(元)"); price3 = rs.getInt("找回金额(元)"); } } jTextField2.setText(num1); jTextFie

18、ld3.setText(num2); jTextField4.setText("" + num3); jTextField5.setText("" + price1); jTextField6.setText("" + price2); jTextField7.setText("" + price3);//在修改界面上显示该职员销售信息 } 然后在对修改界面上信息进行修改,并返回保留至数据库,关键代码以下: String sql = "update sellInfo set 职员编号='" + num1 + "',商品编号='" + num2+ "',

19、商品数目=" + num3 + ",应付金额(元)=" + price1 + ",用户付款(元)="+ price2 + ",找回金额(元)=" + price3 + " where 职员编号='" + num1 + "'"; try { ps = con.createStatement(); ps.executeUpdate(sql);//数据更新 } catch (SQLException e) { e.printStackTrace(); } 效果以下: 四、删除模块: 首先对用户输入职员编号或职员名称进行查

20、找,当数据库中由此数据时,显示该数据,并请求用户是否确定删除,利用sql语句中delete,以职员基础信息为例,关键代码以下: Statement ps = con.createStatement(); ResultSet rs = ps.executeQuery(sql); while (rs.next()) { if (rs.getString("职员编号").equals(jTextField1.getText()) || rs.getString("职员名").equals(jTextField2.getText())) { num

21、1 = rs.getString("职员编号"); num2 = rs.getString("职员名"); i = rs.getInt("年纪"); num3 = rs.getString("性别"); num4 = rs.getString("部门"); num5 = rs.getString("职务"); } } } int s = JOptionPane.showConfirmDialog(null, "确定要删除此数据吗?\t\n职员编号: "+ jTextField1.getText(

22、) + "\t\n" + "职员名: " + num2 + "\t\n" + "年纪: " + i + "(岁)" + "\t\n" + "性别: " + num3 + "\t\n" + "部门: " + num4 + "\t\n" + "职务: " + num5 + "\t");//显示对话框是否确定删除 if (s == 0) { String jk = jTextField1.getText(); String jk1 = jTextField2.getText(); String sql1 = "delete from sta

23、ffInfo where 职员编号='" + jk + "'or 职员名='" + jk1 + "'"; Statement ps1; try { ps1 = con.createStatement(); ps1.execute(sql1);//实施删除 } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } 效果以下: 五、添加模块: 添加数据到数据库关键

24、用是sql中insert语句,在数据中增加所需数据,这期间要尤其注意语句中变量和引号问题,以职员销售表为例,关键代码以下: String num1 = jTextField1.getText(); String num2 = jTextField2.getText(); int ii = Integer.valueOf(jTextField3.getText()); int price1 = Integer.valueOf(jTextField4.getText()); int price2 = Integer.valueOf(jTextField5.getTex

25、t()); int price3 = Integer.valueOf(jTextField6.getText()); String sql = "insert into sellInfo values('" + num1 + "','" + num2 + "','" + ii + "','" + price1 + "','" + price2 + "','" + price3 + "')"; PreparedStatement ps = con.prepareStatement(sql); ps.executeUpdate();//实施并更新

26、语句 效果以下: 六、查询模块: 查询方法关键有两种:一是正确查找,经过用户所输入编号,名称进行查找;二是模糊查找,经过用户所输入模糊信息进行查找,输出全部符合结果。 1.正确查找关键代码以下: String sql = "select* from goodsInfo"; String num1 = null, name = null; int num2 = 0; Statement ps = con.createStatement(); ResultSet rs = ps.executeQuery(sql);

27、 while (rs.next()) { if (rs.getString("商品编号").equals(jTextField1.getText()) || rs.getString("商品名称").equals(jTextField2.getText())) { num1 = rs.getString("商品编号"); name = rs.getString("商品名称"); num2 = rs.getInt("商品单价(元)"); } } 2.模糊查询关键代码以下: String num1 = jTe

28、xtField3.getText(), num2 = jTextField4.getText(), num3 = jTextField5.getText(); if (num1.equals("") && num2.equals("") && num3.equals("")) { GoodsInfo gi = new GoodsInfo(); gi.getGoodsInfo();//假如全部为空,则显示全部数据 } else if (!num1.equals(null) || !num2.equals(null) || !num3.equals(null)) {

29、 Statement ps; ps = con.createStatement(); ResultSet rs; rs = ps.executeQuery("select * from goodsInfo where 商品编号 like '"+ num1+ "%' and 商品名称 like '"+ num2+ "%' and 商品单价(元) like '" + num3 + "%'"); 效果以下: 正确查找:输入商品编号:04,显示结果以下: 模糊查找:输入商品编号:0,显示结果以下:

30、 七、打印模块: 打印信息表关键将修改好数据输出称excel形式,保留在电脑里,以staffInfo为例, String[] title = { "职员编号", "职员名","年纪","性别","部门","职务"};// 准备设置excel工作表标题 String filePath = "D:\\staffInfo.xls";// 输出excel路径 OutputStream os = new FileOutputStream(filePath);// 创建Excel工作薄 WritableWorkbook wwb = Workbook.crea

31、teWorkbook(os); // 添加第一个工作表并设置第一个Sheet名字 WritableSheet sheet = wwb.createSheet("职员基础信息表", 0); Label label = null; for (int i = 0; i < title.length; i++) { // Label(x,y,z)其中x代表单元格第x+1列,第y+1行, 单元格内容是y// 在Label对象子对象中指明单元格位置和内容 label = new Label(i, 0, title[i]);// 将定义好单元格添加到工作表中

32、 sheet.addCell(label); } Statement stmt = con.createStatement(); ResultSet result = stmt.executeQuery("select * from staffInfo");//查询表中全部数据 int x = 0; while (result.next()) { // 从数据库中取得数据 x++; // 控制行数 for (int y = 0; y < title.length; y++) {// 取得列数 label = new

33、 Label(y, x, result.getString(y + 1)); // x代表行, y代表列,经过rst.getString()设置单元格内容 sheet.addCell(label);// 将内容加到execl中去 } } wwb.write(); // 写入数据 wwb.close(); // 关闭文件 保留效果以下: 关键代码以下: OutPutExl oe1 = new OutPutExl(); oe1.OutPutExlstaff(); JOptionPane.show

34、MessageDialog(null, "输出打印职员基础信息表成功!保留在D:staffInfo"); 八、登陆界面:Login.Java 首先连接数据库,并判定用户所输用户名,密码是否正确,假如匹配则让其经过,不然提醒用户名和密码不匹配,请重新输入。判定方法queryUser语句以下: boolean queryUser(String userName,String pass){ Connection1 db=new Connection1(); Connection con=db.getConnection(); String sq

35、l="select* from password where Username= '"+userName +"'and Password= '"+pass+"'"; try { Statement ps=con.createStatement(); ResultSet rs=ps.executeQuery(sql); if(rs.next()){ if(rs.getString("Username").equals(userName)&&rs.getString("Password").equals(pass)) return true;

36、 else return false; }else return false; 登录以下: (4)系统使用说明: 设备支持:推荐配置:Windows7,512内存。 数据库:MySQL Server 5.0。 软件支持:MyEclipse 编写。 (5)日志: 课程设计第一天:进行整体布局构思,创建职员信息表、商品信息表、职员销售信息表连接数据库,实现多个方法验证登录。 第二天:创建主界面,将数据库里表格信息出现在用户端上。关键是panel利用。 第三天:进行简单语句查询,调

37、试编码问题—汉字乱码,并设置滚动面板。经过网上查找了解学习输出打印,将表格输出保留为xls文件。 第四天:编写删除功效代码,利用sql语句对编号正确查找,然后读取该行数据,实现对数据删除,并设置对应控件。 第四天:编写添加、修改功效代码,创建功效面板,调用sql语句进行查找,取得符合要求数据,修改并进行更新数据。 第五天:编写模糊查询,实现对数据模糊查找,并显示在数据面板上。 第六天:在主界面中调用调试各个功效面板,实现功效。并对各个图形界面进行美化。 第七天:编写备注信息,填写课程设计汇报。 (6)心得体会 依据题目要求,编写一个企业销售管理系统。开始设计时,因

38、为初学java语言,对于系统整体编写有一定难度,所以茫然无措。在翻阅了部分书籍后最终有些想法,并开始付诸实施。连接数据库是碰到第一个难点,过程中总是碰到汉字字符,和java和数据库数据交互时汉字乱码问题。后经过调试,查阅资料,并尝试用网上字符转码语句fliter,将写入数据和从数据库中读取数据进行转码,知道须将数据库注册码和生成表字符码要和java编辑软件myeclipse字符码相一致,才排除了数据库信息在面板中异常显示。当处理到选择查询、模糊查询时,又碰到了sql语句引号问题,在sql语句中加入参数需要引号,假如是字符类型,需要表示为’”+data+”’,假如单单是整型,就不需要单引号了。相

39、关局部变量、组员变量、全局变量,也有了深入认识,并经过此程序编写得到了强化。包含到数据库修改问题,因为第一次写入update语句中没有写上判定在数据库中哪一行改变(where···),结果造成全部数据全部变为同一数据,数据库信息丢失了。相关面板居中问题也能自己经过直接编辑代码实现。唯一遗憾是此系统采取是可视化界面做,全部GUI组件位置不稳定,易受干扰,所形成图形界面在美观上不是很好,有待改善。总而言之,此次课程设计不仅锻炼了自己利用java语言编写能力,也增强了自己在处理部分错误,排错技能,对自己以后学习有很大帮助。 参考文件 [1] 孙浏毅.Java宝典[M].电子工业出版社..8 [2] 郎波.Java语言程序设计[M].2版.清华大学出版社..9 [3]张广彬.王小宁.高静Java课程设计案例精编(第二版)[M].清华大学出版社..6 [4]王鹏.何昀峰.Java Swing 图形界面开发和案例详解[M].清华大学出版社..12 注: [M]论著 (8)致谢

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服