欢迎来到装配图网! | 帮助中心 装配图网zhuangpeitu.com!
装配图网
ImageVerifierCode 换一换
首页 装配图网 > 资源分类 > DOC文档下载
 

Java面向对象程序设计购物管理系统实训报告

  • 资源ID:134175900       资源大小:216KB        全文页数:9页
  • 资源格式: DOC        下载积分:9.9积分
快捷下载 游客一键下载
会员登录下载
微信登录下载
三方登录下载: 微信开放平台登录 支付宝登录   QQ登录   微博登录  
二维码
微信扫一扫登录
下载资源需要9.9积分
邮箱/手机:
温馨提示:
用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
支付方式: 支付宝    微信支付   
验证码:   换一换

 
账号:
密码:
验证码:   换一换
  忘记密码?
    
友情提示
2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

Java面向对象程序设计购物管理系统实训报告

Java面向对象程序设计购物管理系统实训报告班 级: 软 件1001 指导教师: 宋 全 记 学 生: 陈 杨 欢 实训时间: 2011年秋期 四川建筑职业技术学院计算机工程系 2011年 12月 29日一、 Java的特点Java具有面向对象、与平台无关、安全、稳定和多线程等优良特性,是目前软件设计中优秀的编程语言。Java不仅可以用来开发大型的应用程序,而且特别适合于Internet的应用开发。Java确实具备了“一旦写成,处处可用”的特点,这也是Java最初风靡全球的主要原因。Java不仅是一门正在被广泛使用的编程语言,而且许多新的领域都涉及了Java语言,Java已成为网络时代最重要的语言之一。二、 实训要求1. 开发环境需要有良好的计算机硬件配置及MyEclipse和Office软件。2. 按实训任务书与指导书的要求,借助教材和所提供的素材认真思考,独立完成项目案例。3. 第一、二天,菜单功能的实现,购物、小票、积分和工资模块;第三、四天,录入、抽奖、切换和折扣模块;第五、六天,查询、统计、录入、验证模块;第七、八天,管理、礼品、密码、馈赠模块;第九、十天,系统信息定义与初始化,系统整体效果,测试与完善。三、 实训目的培养编程的思想,加深对Java这门专业知识的了解,锻炼个人独立思考和逻辑思维能力,为今后步入工作岗位打下能吃苦耐劳、不气不馁的精神基础。四、 主要步骤分析1.用户首先要登录后才能进入系统,因此在登录页面需设置验证用户的用户名和登录密码。2.当用户登录后进入系统主页面,在系统主页面列出“1.客户信息管理”、“2.我要购物”、“3.真情回馈”等选项,当用户选择不同的数字时就进入相应的页面。3.在客户信息管理页面设置“1.所有客户信息”、“2.添加客户信息”、“3.修改客户信息”、“4.查询客户信息”等选项以使管理员能有效且方便地管理整个客户信息系统。4. 用Office办公软件中的Access建立客户信息数据库,以让上面第3点的操作顺利进行。5. 在客户信息管理中,当管理员输入不同的数字后,返回不同的页面供管理员对客户信息进行增、删、改、查等操作。6. 在系统主页面选择“2.我要购物”后,首先显示后台所建数据库的所有的商品信息。然后请顾客输入商品编号和对应编号的商品数量,并询问顾客是否继续购买,当用户选择“y”时继续重复前面的步骤,直到用户选择“n”时进入购物结算页面。7. 在购物结算页面显示该用户的消费单,消费单包括商品名称、个数、折扣、金额、金额总计、实际交费、找钱和所获积分。8. 当用户在购物系统主页输入数字“3”时跳转到真情回馈页面,在真情回馈页面有“1.幸运抽奖”和“2.返回”两项,当用户输入数字“1”时进入幸运抽奖页面,然后询问用户“是否开始?”,当选择“y”后再请用户输入会员卡号和会员积分,后台判断积分在哪个范围,不同的范围返回不同的礼品,积分不够的不返回。五、 主要代码和运行效果1.进入我行我素购物管理系统图1.从登录页面跳转到系统管理页面2. 显示“所有客户信息”的主要代码和运行效果Connection con;Statement sql;ResultSet rs;System.out.println("* * * * * * * * * * * * * * * * * * * * * * * * * * * *");System.out.println("我行我素购物管理系统>客户信息管理>所有客户信息");System.out.println("会员号 生日 积分");System.out.println("-|-|-");try /建立桥接器Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); catch (ClassNotFoundException e) System.out.print(e);try /与数据源建立连接con=(Connection)DriverManager.getConnection("jdbc:odbc:star2","", "");sql = (java.sql.Connection) con).createStatement();rs = sql.executeQuery("SELECT*FROM CustomerInformation"); /从数据表中进行查寻命令while (rs.next() /将客户所有信息以特定的格式输出来int custNo = rs.getInt(1);String date = rs.getString("custBirth");long custScore = rs.getLong("custScore");System.out.printf("%-7s", custNo);System.out.printf("%-10s", date);System.out.printf("%6sn", custScore);con.close();catch (SQLException e) System.out.print(e);图2.显示所有客户信息3.“添加客户信息”的主要代码和运行效果System.out.print("请输入会员号(整数):");custNo = input2.nextInt();/读入会员号System.out.print("请输入会员生日(月/日<用两位数表示>):");String custBirth = input2.next();/读入会员生日System.out.print("请输入积分:");custScore = input2.nextInt();/读入积分AddCustomerLink man = new AddCustomerLink();man.setDatasourceName("star2");/数据源名称为“star2”String backMess;man.setSQL("INSERT INTO CustomerInformation VALUES('" + custNo + "','"+ custBirth + "','" + custScore + "')");/ 将从键盘输入的会员号、会员生日和积分录入数据库表中backMess = man.modifyRecord();System.out.println(backMess);System.out.print("已录入的会员信息是:n" + custNo + "t" + custBirth + "t"+ custScore);图3.向客户信息表中插入客户信息4.“修改客户信息”的主要代码String datasourceName = ""String SQL, message = ""public ModifyCustomerLink() try / 建立JDBC-ODBC桥接器Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver"); catch (Exception e) public void setSQL(String SQL) this.SQL = SQL;public void setDatasourceName(String s) datasourceName = s.trim();public String modifyRecord() Connection con;Statement sql = null;try String uri = "jdbc:odbc:" + datasourceName;String id = ""String password = ""con = (Connection) DriverManager.getConnection(uri, id, password);/ 与数据库建立连接sql = con.createStatement();sql.execute(SQL);message = "修改用户成功!"con.close(); catch (SQLException e) message = e.toString();return message;System.out.print("请输入要修改的客户的会员号:");CustNo1 = member.nextInt();System.out.print("将此客户原来的生日修改为:");CustBirth1 = member.next();System.out.print("将此客户原来的积分修改为:");CustScore1 = member.nextInt();ModifyCustomerLink link = new ModifyCustomerLink();link.setDatasourceName("star2");/数据源名称为“star2”String backMess;link.setSQL("UPDATE CustomerInformation SET custBirth=" + CustBirth1+ " where custNo=" + CustNo1);/ 查询对应会员号的客户并将对应的会员生日和积分做修改link.setSQL("UPDATE CustomerInformation SET custScore=" + CustScore1+ " where custNo=" + CustNo1);backMess = link.modifyRecord();System.out.println(backMess);5.由于查询和删除客户信息与此类似,在这里不做详细说明。6.购物系统图4.选择进入“我要购物”页面7.“购物结算”菜单的主要代码及运行效果System.out.println("我行我素管理系统>我要购物>购物结算");System.out.println("* * * * * * * * * * * * 您的消费单 * * * * * * * * * * * *");System.out.println("物品-单价-折扣-个数-金额");System.out.println(goodsList);/ 打印出该客户购买的所有商品情况以供客户浏览System.out.println("n金额总计:t" + "¥" + sum);System.out.print("实际交费:t");float payment;Scanner pa = new Scanner(System.in);payment = pa.nextFloat();System.out.println("找钱:t" + "¥" + (payment - sum);int score = (int) sum / 2;/积分的算法为总消费的一半System.out.println("你本次购物所获积分是:" + score);int CustNo1;String number2;Scanner member = new Scanner(System.in);System.out.print("n下面请查询你的积分,请输入你的会员号:");CustNo1 = member.nextInt();ModifyCustomerLink link = new ModifyCustomerLink();link.setDatasourceName("star2");/数据源名称为“star2”String backMess;link.setSQL("UPDATE CustomerInformation SET custScore=" + "custScore+"+ score + " where custNo=" + CustNo1);/ 更新该会员的积分图5.打印消费单8“真情回馈”主要代码及运行效果int custScore = rs.getInt("custScore");if (number1 != custScore) System.out.println("抱歉,没有对应的积分!"); else if (number1 = custScore)&& (number1 >= 1000) && (number1 < 2000) System.out.println("恭喜你获得一部价值¥1200的手机!"); else if (number1 = custScore)&& (number1 >= 2000) && (number1 < 3000) System.out.println("恭喜你获得一部价值¥2400的摄影机!"); else if (number1 = custScore)&& (number1 >= 3000) && (number1 < 4000) System.out.println("恭喜你获得一台价值¥3500的数字电视!"); else if (number1 = custScore)&& (number1 >= 4000) && (number1 < 5000) System.out.println("恭喜你获得一台价值¥4800的电冰箱!"); else if (number1 = custScore) && (number1 >= 5000) System.out.println("恭喜你获得一台价值¥5200的笔记本电脑!"); else System.out.println("抱歉,你的积分不足!");图6.幸运抽奖六、 总结1. 实训期间遇到的问题及解决办法 要将显示效果达到像任务书上的那样并不容易,需要一次次地更正。我在设置购物页面的显示效果时,在控制台上显示的编号、商品名称、单价和折扣总是不能与标题对齐,后来从任务书上看到了使用“t”来打印横向跳格,然后才纠正了过来。 后台数据库中数据的类型与我前台编制的代码设置的输入类型不一致,导致错误。根据显示的错误我用百度查后,找到了问题的所在,然后更正了。 最先我没注意到类的取名,没做到见名知意,在使用类的时候有混淆的情况,后来又逐一做了修改。 与数据库有关的代码我本以为只有一种,后来查阅了课本,才知道有两种。查寻数据用的一种,添加、修改等操作则使用了另一种。前一种只需一个类,后一种使用了两个类来完成相关操作。 对于直接关系到添加、修改、删除等操作的关键代码,最初我对相关语句很陌生,无从下手,后经查阅课本和网络上的资料,多番调试后终于得到了解决。 关于当用户输入错误的信息时,需要弹出错误提示并请用户重新输入,这块程序的编写需要一定的逻辑思维,比如什么时候弹出,如何调用类和方法,该使用何种循环等,不得不考虑。有好几次我在调试时,弹出错误的地方都不对,而且有时还弹不出来,此时我不得不停下来静思,分析前因后果,逐步改正。2. 实训感受及收获本次实训,让我学到了平时自己没有学会的Java知识。平时老师虽然给我们讲过了有关知识,可是由于自己没有在课堂上认真听讲,课下练习得少,我掌握的知识也就甚少。但是实训期间我坚持独立完成实训任务,通过自己的大脑去思考,通过自己的双手去敲代码、查资料,真的学到了很多。比如方法的调用,与数据库连接的操作,在控制台显示一定格式的信息等。实训的时候,很多次当我没调试出来实际效果时,都感觉到很失望、很烦。但是我知道任务始终不得不完成,今后到了工作岗位会遇到更多的不顺心的事,所以我没敢放弃,相信坚持就一定胜利。现在,我虽然没有完整地将整个系统做好,但是基本的功能已经实现。我对自己做出的效果还是感到比较满意的。最后,我要感谢宋老师平时对我们的精心教导,预祝宋老师新年快乐!

注意事项

本文(Java面向对象程序设计购物管理系统实训报告)为本站会员(ren****ao)主动上传,装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知装配图网(点击联系客服),我们立即给予删除!

温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!