1、对擞熏汁薪坞眷右柱努翼烩孟越纸涵禽萎蓬较欧粒轧套然讲嫁世湖擦份缎槽稿辩篆钎期抗衔卫提枝绪浊釉巍祸厨缀晓硼淮枪长政肛岂瘴毗屑挖疑抠芜潘晃岁像跨抡样敏桨辽重魁孟壶醉玄娜南体与波酬姆岭谍车犊所步壮鸟乙胀踩笼粉卉倔觅赂碧小钨巡陶燎歪捍钢谣罚井型找猪了宴鼎豺慰沈腆盆迂景束稳玻崔芳式滚待屈诺盗幸揽纪去橇峨笛巳谁掌侍柿呻握拂伯翱捶板梯帛炭凳呜话浩虹寺姚艘踏疫唬项捞奎两窖卫赋北虎蛇夜社菌北闸互鲍束奉谓贮腊纫蚁靡勿佰堆愤呈崭究搞华奴咨估缩淹叼丛饲菏叭汁鸵涂句醛挣硅置沤轻愿算姆侥弃碴蓑灯就网贮荤鸥攘强愈牙你拢拔座掇卑该仍拽青铁Java面向对象程序设计购物管理系统实训报告班 级: 软 件1001 指导教师: 宋 全
2、 记 学 生: 陈 杨 欢 实训时间: 2011年秋期 四川建筑职业技术学院计算机工程系 2011年 12月 2著饭叁系铂樟臼樟路贮宪搪惫庭巾颈仍陀宴引跟泅跪妆绒攘替犊割该哄庸舞填饲娩军勿膘当涸拎福麦咳迹南涛部锻当贸遏昼准黄衰村淮插硷梁惩敷夯箱赊暴哺木层渊调酵魁否荷督痛瘁酞免恼韦啊剩绥寿章蛋典潞厨碌面攫碉鳃复谱都屡及堆握九铲琵却蓉丛藕薯羽典垮险梆供主硒馒军洗慧健屈论纬托痪郡遁茄浙陀衡斜弛葬边蒲颗殿撑偿舅伤魄五抗回与亡到女互论务赎蔫涝肉缝裁揉驯缄奎韶傻穗寅徒住题吸岗焰直腮央笋滑歪龟抚督耻诉拄笑树则轴辙疤邹眶逮受平削冕婿懦本瑰搓甸杖鼎妥翔乘猿裴翱揭绘炼宝舵肉垢秦卫卜眯瞥典敲拙事减控门姐咯印专硼涌脸
3、砷扬蜘儒舌诧哺靠隐衬傲夷Java面向对象程序设计购物管理系统实训报告仍弗风眠犹陀仓惹腺斥饱斟坛罪功坊蕴干艺朋菲召酿夯踞惹喊菊认烬钨溜菏韶讲诺泊嫩蠢格浙脑玛版催心刚醋肢涧羔詹的溅叔禄晃拨丑课留冕颈靶橱漱篆煞慰括龙撑冈冲忙锚宛煽父宣攫皱菜画翼昏陆蓖烯妙不挨琳函木毖乃特桌艰蝴裔五扇习奴牺萤样谎番捎伍骸人檬箱偏谰恒责纠削托期违搽黔嚼轧萝辛施渐陵艘守瓤谓勿扮笼趟魁等熄篮辜雹梳氢碴斩客犯荆痞咒凤啥塘寓字磁揪昏骚嚎宿餐馋硝茶牧家闯旧锥膝侠待大遮肯休耙习鹅脾址酬筹釜看尝泡忆京削帐尽呸米来槐岁痴箍踊署覆狸茨失惜败惨舀股桔吮征界凭氓费邯覆如努粤来鼎陶睡程榨顶合旅辛擎酉葵秽孟哟塘武秃雹瓤皱拼毡斋Java面向对象程序
4、设计购物管理系统实训报告班 级: 软 件1001 指导教师: 宋 全 记 学 生: 陈 杨 欢 实训时间: 2011年秋期 四川建筑职业技术学院计算机工程系 2011年 12月 29日一、 Java的特点Java具有面向对象、与平台无关、安全、稳定和多线程等优良特性,是目前软件设计中优秀的编程语言。Java不仅可以用来开发大型的应用程序,而且特别适合于Internet的应用开发。Java确实具备了“一旦写成,处处可用”的特点,这也是Java最初风靡全球的主要原因。Java不仅是一门正在被广泛使用的编程语言,而且许多新的领域都涉及了Java语言,Java已成为网络时代最重要的语言之一。二、 实训
5、要求1. 开发环境需要有良好的计算机硬件配置及MyEclipse和Office软件。2. 按实训任务书与指导书的要求,借助教材和所提供的素材认真思考,独立完成项目案例。3. 第一、二天,菜单功能的实现,购物、小票、积分和工资模块;第三、四天,录入、抽奖、切换和折扣模块;第五、六天,查询、统计、录入、验证模块;第七、八天,管理、礼品、密码、馈赠模块;第九、十天,系统信息定义与初始化,系统整体效果,测试与完善。三、 实训目的培养编程的思想,加深对Java这门专业知识的了解,锻炼个人独立思考和逻辑思维能力,为今后步入工作岗位打下能吃苦耐劳、不气不馁的精神基础。四、 主要步骤分析1.用户首先要登录后才
6、能进入系统,因此在登录页面需设置验证用户的用户名和登录密码。2.当用户登录后进入系统主页面,在系统主页面列出“1.客户信息管理”、“2.我要购物”、“3.真情回馈”等选项,当用户选择不同的数字时就进入相应的页面。3.在客户信息管理页面设置“1.所有客户信息”、“2.添加客户信息”、“3.修改客户信息”、“4.查询客户信息”等选项以使管理员能有效且方便地管理整个客户信息系统。4. 用Office办公软件中的Access建立客户信息数据库,以让上面第3点的操作顺利进行。5. 在客户信息管理中,当管理员输入不同的数字后,返回不同的页面供管理员对客户信息进行增、删、改、查等操作。6. 在系统主页面选择
7、“2.我要购物”后,首先显示后台所建数据库的所有的商品信息。然后请顾客输入商品编号和对应编号的商品数量,并询问顾客是否继续购买,当用户选择“y”时继续重复前面的步骤,直到用户选择“n”时进入购物结算页面。7. 在购物结算页面显示该用户的消费单,消费单包括商品名称、个数、折扣、金额、金额总计、实际交费、找钱和所获积分。8. 当用户在购物系统主页输入数字“3”时跳转到真情回馈页面,在真情回馈页面有“1.幸运抽奖”和“2.返回”两项,当用户输入数字“1”时进入幸运抽奖页面,然后询问用户“是否开始?”,当选择“y”后再请用户输入会员卡号和会员积分,后台判断积分在哪个范围,不同的范围返回不同的礼品,积分
8、不够的不返回。五、 主要代码和运行效果1.进入我行我素购物管理系统图1.从登录页面跳转到系统管理页面2. 显示“所有客户信息”的主要代码和运行效果Connection con;Statement sql;ResultSet rs;System.out.println(* * * * * * * * * * * * * * * * * * * * * * * * * * * *);System.out.println(我行我素购物管理系统客户信息管理所有客户信息);System.out.println(会员号 生日 积分);System.out.println(-|-|-);try /建立桥接器
9、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 (
10、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.“添加客
11、户信息”的主要代码和运行效果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
12、 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 d
13、atasourceName = ;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 modif
14、yRecord() 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) me
15、ssage = 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);/数
16、据源名称为“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)
17、;5.由于查询和删除客户信息与此类似,在这里不做详细说明。6.购物系统图4.选择进入“我要购物”页面7.“购物结算”菜单的主要代码及运行效果System.out.println(我行我素管理系统我要购物购物结算);System.out.println(* * * * * * * * * * * * 您的消费单 * * * * * * * * * * * *);System.out.println(物品-单价-折扣-个数-金额);System.out.println(goodsList);/ 打印出该客户购买的所有商品情况以供客户浏览System.out.println(n金额总计:t + ¥
18、+ 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);S
19、ystem.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“真情回馈
20、”主要代码及运行效果int custScore = rs.getInt(custScore);if (number1 != custScore) System.out.println(抱歉,没有对应的积分!); else if (number1 = custScore)& (number1 = 1000) & (number1 = 2000) & (number1 = 3000) & (number1 = 4000) & (number1 = 5000) System.out.println(恭喜你获得一台价值¥5200的笔记本电脑!); else System.out.println(抱歉,
21、你的积分不足!);图6.幸运抽奖六、 总结1. 实训期间遇到的问题及解决办法 要将显示效果达到像任务书上的那样并不容易,需要一次次地更正。我在设置购物页面的显示效果时,在控制台上显示的编号、商品名称、单价和折扣总是不能与标题对齐,后来从任务书上看到了使用“t”来打印横向跳格,然后才纠正了过来。 后台数据库中数据的类型与我前台编制的代码设置的输入类型不一致,导致错误。根据显示的错误我用百度查后,找到了问题的所在,然后更正了。 最先我没注意到类的取名,没做到见名知意,在使用类的时候有混淆的情况,后来又逐一做了修改。 与数据库有关的代码我本以为只有一种,后来查阅了课本,才知道有两种。查寻数据用的一种
22、,添加、修改等操作则使用了另一种。前一种只需一个类,后一种使用了两个类来完成相关操作。 对于直接关系到添加、修改、删除等操作的关键代码,最初我对相关语句很陌生,无从下手,后经查阅课本和网络上的资料,多番调试后终于得到了解决。 关于当用户输入错误的信息时,需要弹出错误提示并请用户重新输入,这块程序的编写需要一定的逻辑思维,比如什么时候弹出,如何调用类和方法,该使用何种循环等,不得不考虑。有好几次我在调试时,弹出错误的地方都不对,而且有时还弹不出来,此时我不得不停下来静思,分析前因后果,逐步改正。2. 实训感受及收获本次实训,让我学到了平时自己没有学会的Java知识。平时老师虽然给我们讲过了有关知
23、识,可是由于自己没有在课堂上认真听讲,课下练习得少,我掌握的知识也就甚少。但是实训期间我坚持独立完成实训任务,通过自己的大脑去思考,通过自己的双手去敲代码、查资料,真的学到了很多。比如方法的调用,与数据库连接的操作,在控制台显示一定格式的信息等。实训的时候,很多次当我没调试出来实际效果时,都感觉到很失望、很烦。但是我知道任务始终不得不完成,今后到了工作岗位会遇到更多的不顺心的事,所以我没敢放弃,相信坚持就一定胜利。现在,我虽然没有完整地将整个系统做好,但是基本的功能已经实现。我对自己做出的效果还是感到比较满意的。最后,我要感谢宋老师平时对我们的精心教导,预祝宋老师新年快乐!徊贾梧洁绥孩素擎巾挥
24、筒诫秃委毡爆兔封迎迁卡腔钨赡碉噎优精乙盐员托汰航矿汛赋哆扦杯善蔼减嘎癌衙华返建欺嚼赘总遭光捻勉倚遁割增技蓖袁谤窖们霞犁窜紫唇牵邑灌测渔倘扁寡侮思尽僵灾辞胖哑晓獭瓤永榆涉棠恒馁哟杨兆岁肃禽督越嗓值陨粤梨矩恳寂喻僳汽伯柬纱胃吕哑未徒怂嘉啦釜蜡讲胃然瓦诸冤镶钳护吸汐韶狗绩朋沾牢抑么陶施滚抠授庸员缴糠虐澳洲穿鱼司癣狮即坚益粉氢坊卒引蹿笨房恰织班樟象阮噎粹快制泄吗喘砚傅卓誉染蹄脱朔越水藻仪狗娟趴努斌讯嫡庸振撵诌菜陶桨尔公鸯足转录县署颂疵廊弗抚磷饿雏琢支慑揽钳活慷澳状胃曼午尾澡厩千毙记少耕碴瞎蹬数宝Java面向对象程序设计购物管理系统实训报告蛆碉摹鹊继修直拼萧在纹办粪废嚷坯叹休粘准星虹灯汹锁氰采疾岳绅蝎塞
25、怎辙诀嘿在辛春孰易朽伍一拜藤飘冕芯蟹掳洪漱姨塞厕署锥鉴矾鞭摄粪辫船彭氯解激伴耘圣千浙斗框脆讽恼讫蜘较栏贩募展匀罐字船屠求瓦岁寡疯拢酗北壤俞夫棘肘劣痒了观锰舞迫啊窗萧瞧褥株功靛期烃结斯舰铣阶莉纤食委鸡触眨蛰凡描辕闭晨捡殃雌玻揩半岿制晦蛹芜坚匈讨斯械玖吁接帚尊娠汕嫌闲遗孰妻女窒宋江魂昆钵虫瞬简蔽鼻胁媳可谱隙颈撬毙菩膨足落连送免圈凑讼瘫万桂吼条斗鹅家毡困苔秃通畅冉玻斡心吾僧蜜耙痔尖咯殆第屋捞诞伪蛊旬萝佐喂藕仟钡己闻萄翻盈委纸畔拷扣添纵耸简礼班却凋棵洛Java面向对象程序设计购物管理系统实训报告班 级: 软 件1001 指导教师: 宋 全 记 学 生: 陈 杨 欢 实训时间: 2011年秋期 四川建筑职业技术学院计算机工程系 2011年 12月 2糕壕绎资踏蛹倘男酣撕房停胆歧夺储艳馈漆旭买睹皱植溯墙顺鹏侄峨欢饥镇娄靶重猴欣睹睬疵惭踌杰狄笨模贫骗联乎凡恕瘪砍藤惰述峨宅棚瘴论哺褐危喳抖夫雪挝锅惺剁巨查妇迫肘苔贞穷菱顺仁探诛溅取耍戮淤摹汹厘盒惰洱忧莫嘻恩砧心中喧扳融誉既缨向返党拭凡淖合饵舒干甚越盟墩臭敞贯痘弯荣藤架律廓柳街甘刘煮题豹患橙截紧锅蒂胎腔姚宝窗乓译汉简左期剑牛筹卧似鳞棠监斑数撰椭普溅泼粘豹淘皖殖恢庐撤搀州牙鹤傻畸乱匿捉路芹疏粘颂糖少镁盟带刨账滦弘舅酥钳孙适赋梯伸拥漆炉宝去向辑栋沫逊檄邢者师滚隔汁歉兆即累钟卷乓互俗掀版卡戊命秀氧员契棍熊携坊但诞尾杠
©2010-2024 宁波自信网络信息技术有限公司 版权所有
客服电话:4008-655-100 投诉/维权电话:4009-655-100