毕业设计(论文)-基于Java Web技术的体育用品网上商城的设计与实现.docx_第1页
毕业设计(论文)-基于Java Web技术的体育用品网上商城的设计与实现.docx_第2页
毕业设计(论文)-基于Java Web技术的体育用品网上商城的设计与实现.docx_第3页
毕业设计(论文)-基于Java Web技术的体育用品网上商城的设计与实现.docx_第4页
毕业设计(论文)-基于Java Web技术的体育用品网上商城的设计与实现.docx_第5页
已阅读5页,还剩25页未读 继续免费阅读

下载本文档

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

文档简介

本科生毕业设计 题 目 基于Java Web技术的体育 用品网上商城的设计与实现姓 名 龙学 号 1院 系 专 业 信息与计算科 学 学指导教师 智 2016 年 12月教务处制本科生毕业设计声明 本人郑重声明:所呈交的毕业设计,是本人在指导教师指导下,进行研究工作所取得的成果。除文中已经注明引用的内容外,本设计的研究成果不包含任何他人创作的、已公开发表或没有公开发表的作品内容。对本论文所涉及的研究工作做出贡献的其他个人和集体,均已在文中以明确方式标明。本设计创作声明的法律责任由本人承担。 作者签名: 年 月 日 本人声明:该毕业设计是本人指导学生完成的研究成果,已经审阅过毕业设计的全部内容,保证题目、关键词、摘要部分中英文内容的一致性和准确性,并通过一定检测手段保证毕业设计未发现违背学术道德诚信的不端行为。 指导教师签名: 年 月 日 内容摘要:随着时代的发展,体育用品的买卖已经不在局限于普通的商店. 本系统共两大模块,一是用户模块,二是管理员模块,用户模块实现了对商品的购买,查看.管理员模块能够对用户和商品进行管理.本系统最大的有点是操作简单,方便迅速.相对于其他商城来讲,本系统更专一,成为体育用品专营店.本系统是运用JAVA web技术和My SQL数据库来实现的.该系统名称为网上体育用品商城.该系统主要分为三大页面:网站前台购买界面、注册页面和后台的管理员界面.关键词: JAVA Web My SQL 简单 专一 全套设计加扣3012250582 Abstract: with the development of sports goods trade is not limited to the general store. The system consists of two modules, one is the user module, the administrator module is two, the user module for the purchase of goods, check. The administrator module can manage users and goods. This system is the biggest is a kind of simple operation, convenient and rapid. Compared with the other mall, this system is more specific, a sporting goods store.This system is the use of JAVA web technology and My SQL database. The system name for the online sporting goods store. This system is mainly divided into three pages: buy web interface, the registration page and backstage administrator interface.Key words: JAVA Web My SQL simple specific目 录1 前言.11.1系统开发背景.11.2 国内外研究现状.11.3 系统开发目的及意义.12 相关技术工具介绍.12.1 MyEclipse工具说明.12.2 MySQL工具说明.13 系统的需求分析.13.1 系统可行性分析.13.2 系统功能需求.24 系统的分析与设计.24.1 系统的分析与设计.24.2 业务对象分析.24.3 业务流程分析.34.4 数据库需求分析.45 系统的实现.75.1 网站界面.85.2 体育用品专营店后台管理.116 系统的测试.126.1 程序调试.12设计总结.15参考文献.16致 谢.17附 录.18 1 前 言1.1 系统开发背景网络的发展已经成为现在的潮流,必不可少的一部分.而现在的人们也更加注重了自身的锻炼.体育用品网上商城已经成为一个重要的领域,体育事业的发展已经成为时代的潮流,实体店的购买浪费了人们太多的时间和精力,人们要更多的适应信息化的社会和网购的乐趣.这样才能加快人的步伐和时代的进步.1.2 国内外研究现状国内外越来越多的人更加注重自身的健康.注重了体育方面的锻炼.越来越多的人更是为了减肥想尽一切的办法在不断的进行吃药或者锻炼.但是,更多的人则是发现药物对身体的害处.所以越来越多的人注重体育方面的锻炼.所以,体育用品成为了一个重要的市场.1.3 系统开发目的及意义网络时代发展的迅速,很多的人有了自己的手机和自己的电脑.实体店的购物逐渐的被网络购物所取代.网购已经成为现在这个社会或者全球的一种潮流.本系统的开发主要视为了方便更多的人足不出户买到自己心仪的商品.首先节约了自己的时间.其次,买到专营店的商品使顾客更加的放心.而且也不需要自己去健身房去花费更多的钱.让自己可以安心的在家里方便的健身,不但,有了一个健康的身体,还节约了更多的时间陪伴自己的家人.2 相关工具的介绍2.1 My Eclipse工具说明My Eclipse与Eclipse相类似,基本上实现Java所有的功能.用法极为简单,使用起来很是方便.2.2 My SQL工具说明My SQL是一个关系型数据库管理系统,通过navicat 的界面打开.建立数据表.之后的数据将会通过界面的操作进行存储删除和查询. 3 系统的需求分析3.1 系统可行性分析3.1.1 经济可行性 大大的节约了人们从家到实体店买东西的时间.也节约了工作人员的时间和人力的分配.3.1.2 操作可行性 本系统操作简单,很容易上手,可以让更多的人适应和理解.3.2 系统功能需求 3.2.1 系统功能需求 根据系统功能分析,可以画出系统的功能模块图,从客户界面,管理界面分别对功能模块图加以描述.主要实现以下功能:前台功能模块: 前台主要包括商品分类,商品描述,商品销量排行,商品搜索,网站访问量统计,用户留言,用户注册,会员登录,购买商品,购物车,我的信息,联系我们,提供后台登录口.后台管理模块: 后台主要包括网站系统参数,管理员维护,会员管理,商品管理,订单管理,销量管理,留言公告管理,退出后台.4 系统的分析与设计4.1 系统的分析与设计1.首先采用的是My Eclipse和My SQL的开发环境进行开发.2. 首先对系统进行需求分析.3.对系统进行模块化划分.然后将大模块分成小的模块.这样思路就会很清晰. 4.页面设计简单,方便用户的操作. 4.2 业务对象分析用户功能图安全性,普通的用户只能进行查看和购买等,普通用户用例图如图1所示:购买登录注册查看搜索留言删除图1 用户功能图管理员是系统的重要用户,涉及到七大功能模块,管理员对系统的所有信息有着操作的权限,能够及时动态的更新系统的各项信息.如图2.管理员模块留言公告销量管理订单管理商品管理会员管理系统参数管理员维护图2 管理员功能图4.3业务流程分析4.3.1 业务流程分析 进入系统的关键就是在于管理员的登陆系统.根据上述说明,建立了系统流程图,如下图3所示.后台系统管理登录N登录Y首页订单管理会员管理商品管理商品分类管理员管理否是是否继续 图3系统后台流程图 4.3.2 系统前台功能图 客户注册登录系统N登录Y首页留言。商品查看商品购买否是是否继续 图4 前台网站流程图 4.4 数据库需求分析需求具体体现在各种信息的提供,保存,更新和查询方面,这就要求数据库结构能充分满足各种信息的输入和输出.收集基本数据,数据结构及数据处理的流程,组成一份详尽的数据字典,为后面的具体设计打下基础1.通过系统功能分析,针对一般的在线信息交流系统,总结出如下的需求信息:4.4.1 数据库概念结构设计 主要通过两个层面进行设计,分别是商品和人.本系统具体分析如下:一个管理员一次可以多个工资信息,而一个工资信息只可以被一个管理员编辑管理员信息实体E-R图如图所示:4.4.2 数据库的表的具体内容如下表1 用户表 t_admin列名数据类型长度允许空用户序号userIdint11主键用户名userNamevarchar50not null密码userPwvarchar50not null表2商品类别表 t_catelog列名数据类型长度允许空类别序号catelog_idint4主键类别名称catelog_namevarchar50not null类别描述catelog_miaoshuvarchar5000not null表3公告信息表 t_gonggao列名数据类型长度允许空列名公告序号gonggao_idint4主键公告标题gonggao_titlevarchar50not null公告内容gonggao_contentvarchar50not null发布时间gonggao_datadatetime50null发布者gonggao_fabuzhevarchar50null表4用户留言表 t_liuyan列名数据类型长度允许空留言序号liuyan_idint4主键留言标题liuyan_titlevarchar10not null留言内容liuyan_contentvarchar8not null留言日期liuyan_datevarchar10not null留言者liuyan_uservarchar4null表5 商品表 t_goods列名数据类型长度允许空商品序号goods_idint4主键商品名称goods_namevarchar10not null商品描述goods_miaoshuvarchar8not null商品图片goods_picvarchar10not null类别IDgoods_catelog_idint11表6商品订单 t_order列名数据类型长度允许空订单序号order_idint4主键订单编号order_bianhaovarchar10not null订单日期order_datevarchar8not null订单状态order_zhuangtaivarchar10not null订单金额order_jinevarchar4null订单送货方式order_songhuodizhivarchar4订单付款方式order_fukuangfangshivarchar4会员IDorder_user_idint4表7商品订单明细表 t_orderitem列名数据类型长度允许空订单明细orderItem_idint4主键订单IDorder_idint4not null商品IDgoods_idint4not null商品数量goods_quantityint4表8登陆用户表 t_user列名数据类型长度允许空用户序号user_idint4主键用户名user_namevarchar50not null密码user_pwvarchar50not null真实姓名user_realnamevarchar50not null地址user_addressvarchar50null性别user_sexvarchar50null电话user_telvarchar50null邮箱user_emailvarchar50nullQQuser_qqvarchar50null表9评价表 t_ping列名数据类型长度允许空用户序号idint4主键订单序号order_idint50null订单明细序号orderitem_idvarchar50null商品编号goods_idvarchar50null名称mingchengvarchar50null用户序号user_idvarchar50null登录名loginnamevarchar50null评价信息infovarchar50null添加日期adddatevarchar50null5 系统的实现该系统的设计的界面大部分是以管理的模式进行设计的,其主要的原因是因为大多数的数据以管理的方式在界面进行添加.其主要功能如下:前台2商品分类:查看商品的分类.商品描述:查看商品详情.销量排行:商品销售排行榜.商品搜索:可以搜索自己感兴趣的软件商品.会员注册:检测用户提供的信息并注册用户.购物车:用户将自己选定的用品进行添加和购买.订单管理:时刻对自己的商品进行修改,删除等操作.留言:用户留言.公告管理:了解网站的公告信息.联系我们:商家联系方式.后台部分3系统参数:系统运行环境.管理员维护:对管理员信息进行维护.会员管理:对用户的信息进行维护.商品管理:对商品类别,商品信息等进行维护.订单管理:对会员购买订单进行管理.销量管理:分析统计所有商品的销售情况.留言公告管理:查看用户的留言信息,发布网站公告通知.退出系统:退出系统.5.1 网站界面5.1.1首页界面访客可以浏览体育用品专营店,界面如下所示:在这个界面上可以进行商品搜索,用户的注册,对商品的图片展示,还可以查看商品的信息和在线留言.当显示在其他的页面的时候,点击网站首页可以回到网站的首界面.如果对商家有什么想说的可以在在线留言的地方进行对商家的留言,购买的商品可以在购物车里进行查看,在购物车当中提交订单后可以在我的订单当中查看我的订单信息,还可以了解商家对订单的处理4. 图5 首届页面 5.1.2商品描述点击商品链接可以查看商品基本信息,评价信息等.在图片中可以看到商品名称,品名: 李宁 LINING PVC材质 5号LFQH002-1 商品的简介:商品的名称、品牌、商品毛重、货号、材质、商品编号、上架时间、商品产地、类别、规格.价格:130图片的显示图6 商品描述5.1.3销量排行根据商品的销售情况进行排行,将前五位的商品进行展示.主要是通过用户在该网站上的购买,后台在对购买商品的数量对商品的数量进行统计,将统计的结果在前台的页面上进行展示,展现了商品的销量,可以看出商品销售的热度,这样管理员可以根据前台页面的显示,对商品的数量进行一定的添加,可以对商品进行一定数量上的控制. 图7 商品排行5.1.4商品搜索输入商品标题关键字,可以查询需要查看的商品.在该功能项当中进行商品搜索可以在输入框当中输入关键字,就可以找到其所对应的商品,在搜索过程后完全可以完全展示商品的详细信息.可以看到商品的名称,市场价、特价、商品图片、操作等.将索搜到的商品进行详细的列出,使顾客看到详细的商品信息,根据自己喜欢的进行添加购物车,提交订单,查看订单的信息. 图8 商品搜索5.1.5会员注册用户输入基本信息进行注册.包括用户的用户名、密码、密码确认、真实姓名、收货地址、性别、电话、E-mail、qq.当确认注册后点击确定,即可进行商品的注册.如果不想注册,点击取消即可.首先,用户要进入该系统的首页,在登陆的窗口的地方有注册,点击注册,弹出的界面就是下面的图片,只有用户进行成功的注册,用户才能够在主页面上进行商品的购买和添加等一系列的过程. 图9 会员注册5.1.6购物车用户的购物车的功能,在主页面当中用户首先要操作的是在首界面当中进行用户的登陆,如果用户没有账号则是要先进行用户的注册,在注册成功之后就可以就可将自己喜欢的商品进行添加到购物车当中,在购物车当中可以对商品的数量进行增加和减少如果想再购买其他的商品点击继续购物,即可在回到主页的上面进行购买,如果购买完成,点击下一步就可进行对商品进行提交,提交后会有相关的提示,如果想将该商品在购物车当中删除该商品,即可点击删除,将该商品进行删除. 图10 购物车5.2 体育用品专营店后台管理这是管理远的登陆的界面,管理员的相关信息可在数据库当中修改,如修改管理员的登陆名称、密码.密码是随机生成的,管理员可在数据库当中进行随意的修改.当管理员的密码和名称输入正确的时候就可以进入后台管理的界面,就可以对商品和用户进行查看、修改、删除、添加、等功能的操作.还能对用户的订单进行处理,受理订单的操作和删除订单等操作.还有商品的分类,系统的管理和用户的管理还有公告的提示以及退出系统的的操作.在图18中,是后台管理中主要操作的部分,它完成了后台的所有操作. 图11 后台登陆 图12 后台管理6 程序调试6.1 程序调试 在本程序的设计中,会出现很多的错误,大多是程序语句上的错误,像这种错误一般都是在写程序的过程中就在调试,操作起来比较费时费力.程序语句以外的错误大多是数据库的错误比如在页面会显示500的错误,还有会在My SQL里显示01017的错误,这两类错误大多都是与数据库有关的.上述的两个错误都已成功的解决,操作的过程也算是复杂5.表10 测试用例表登录管理功能-测试用例测试项:用户用户登录编号用例名称级别预置条件执行步骤预期结果实际结果1用户登陆2预置条件:名称:于成龙密码:11.在浏览器中打开页面2.输入账号和密码3.输入验证码4.点击登录按钮登陆后显示登陆的界面通过测试项:用户购物车1购物车2点击商品上的购物车图标1.在浏览器中打开页面2.输入账号和密码3.输入验证码4.点击登录按钮5.选择自己的商品6.点击添加购物车购物车当中显示添加的商品信息通过测试项:用户注册1注册2点击注册1.在浏览器中打开页面2.点击注册 3.添加个人信息4.注册成功显示添加页面并提示注册成功通过测试项:用户搜索1搜索3输入搜索的关键字,点击搜索1.在浏览器中打开页面2.输入账号和密码3.输入验证码4.点击登录按钮5.输入自己所要的 6.点击查询显示与自己输入有关的信息通过测试项:管理员登陆1登陆2预置条件:用户:admin密码:88881.在浏览器中打开页面2.输入账号和密码3.输入验证码4.点击登录按钮5.点击管理员登陆 6.输入名称和密码显示管理员界面通过测试项:管理员商品添加1商品添加2点击商品添加点击类别管理点击添加1.在浏览器中打开2.输入账号和密码3.输入验证码4.点击登录按钮5.点击管理员登陆 6.输入名称和密码7点击商品添加8点击类别管理9点击添加添加成功并保存通过 设计总结1系统的特点: 本系统最大的特点就是操作简单,让更多的人很容易适应这个过程.界面的设计通俗易懂,让更多的人容易使用.2系统的不足和改进这个系统的复杂程度相对来说还不是很复杂,内容上略微的有点单一,界面的设计上不是很靓丽,过于的单一,所以还要在界面的设计上有更大的提升.在内容上要更加的充实.3设计收获与心得这个系统的设计是对学习JAVA的一个总结,是对自己的一个考验.无论自己做得多与少自己在不同的程度方面都有了一定的收获.这是对自己的一次考验,对自己的一次历练.无论自己做得如何,只要自己去努力去拼搏并且认真的完成这个系统.这是对自己一个很大的提升.自己会一直在学习一直的去努力.这样才能无限的提升自己.自己在学习的同时,不但要有量的积累还要有质的飞跃.既要保证量的多,又要保证质的好.参考文献1李杨俊.基于My SQL的开源数据库应用研究J.数据技术与应用,2014(6):28-50.2李宁.java web编程实战宝典M:北京:清华大学出版社,2014:63-96.3陈国君.Java程序设计基础M(第4版):北京:清华大学出版社,2015:17 -23.4张帆.JSP网络课程设计J.软件导刊,2012(07):12-16.5朱少民.软件测试方法和技术M.北京:清华大学出版社,2014:15-32. 致 谢我的毕业论文和毕业设计已经完成了,感谢张宏智老师和王世广老师在这两个月以来对我的悉心指导,并时刻的提醒我把我所完成的进度告诉他们.并且提醒我的论文格式和内容.在这里我想对两位老师说,老师你们辛苦了.还要感谢我的爸爸和妈妈.他们永远是我的最有利的后盾,虽然在知识方面和技术方面他们帮不上我,但是他们一直都在鼓励我.在心里上给我强大的支撑.每一个人的父母都是这样的,永远希望自己的孩子是最棒的!在这里我们一起感谢我们的父母. 附 录关键代码1. RandomValidateCode:系统登录验证码public class RandomValidateCode public static final String RANDOMCODEKEY = RANDOMVALIDATECODEKEY;/放到session中的key private Random random = new Random(); private String randString = 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ;/随机产生的字符串 private int width = 80;/图片宽 private int height = 26;/图片高 private int lineSize = 40;/干扰线数量 private int stringNum = 4;/随机产生字符数量 private Font getFont() return new Font(Fixedsys,Font.CENTER_BASELINE,18); private Color getRandColor(int fc,int bc) if(fc 255) fc = 255; if(bc 255) bc = 255; int r = fc + random.nextInt(bc-fc-16); int g = fc + random.nextInt(bc-fc-14); int b = fc + random.nextInt(bc-fc-18); return new Color(r,g,b); public void getRandcode(HttpServletRequest request, HttpServletResponse response) HttpSession session = request.getSession(); /BufferedImage类是具有缓冲区的Image类,Image类是用于描述图像信息的类 BufferedImage image = new BufferedImage(width,height,BufferedImage.TYPE_INT_BGR); Graphics g = image.getGraphics();/产生Image对象的Graphics对象,改对象可以在图像上进行各种绘制操作 g.fillRect(0, 0, width, height); g.setFont(new Font(Times New Roman,Font.ROMAN_BASELINE,18); g.setColor(getRandColor(110, 133); /绘制干扰线 for(int i=0;i=lineSize;i+) drowLine(g); /绘制随机字符 String randomString = ; for(int i=1;i=stringNum;i+) randomString=drowString(g,randomString,i); session.removeAttribute(RANDOMCODEKEY); session.setAttribute(RANDOMCODEKEY, randomString); System.out.println(randomString); g.dispose(); try ImageIO.write(image, JPEG, response.getOutputStream();/将内存中的图片通过流动形式输出到客户端 catch (Exception e) e.printStackTrace(); private String drowString(Graphics g,String randomString,int i) g.setFont(getFont(); g.setColor(new Color(random.nextInt(101),random.nextInt(111),random.nextInt(121); String rand = String.valueOf(getRandomString(random.nextInt(randString.length(); randomString +=rand; g.translate(random.nextInt(3), random.nextInt(3); g.drawString(rand, 13*i, 16); return randomString; private void drowLine(Graphics g) int x = random.nextInt(width); int y = random.nextInt(height); int xl = random.nextInt(13); int yl = random.nextInt(15); g.drawLine(x, y, x+xl, y+yl); public String getRandomString(int num) return String.valueOf(randString.charAt(num); 2. buyAction 购物管理类public class buyAction extends ActionSupportprivate int goodsId;private int quantity;private int orderId;private TGoodsDAO goodsDAO;private TOrderDAO orderDAO;private TOrderItemDAO orderItemDAO;private String message;private String path;private String odderSonghuodizhi;private String odderFukuangfangshi;private TPingDAO pingDAO;public String addToCart()TGoods goods=goodsDAO.findById(goodsId);TOrderItem orderItem=new TOrderItem();orderItem.setGoods(goods);orderItem.setGoodsQuantity(quantity);Map session= ServletActionContext.getContext().getSession();Cart cart = (Cart)session.get(cart);cart.addGoods(goodsId, orderItem);session.put(cart,cart);/this.setMessage();this.setPath(myCart.action);return succeed;public String myCart()return ActionSupport.SUCCESS;public String orderQueren()Map request=(Map)ServletActionContext.getContext().get(request);return ActionSupport.SUCCESS;public String orderSubmit()Map session= ServletActionContext.getContext().getSession();Cart cart = (Cart)session.get(cart);TUser user=(TUser)session.get(user);TOrder order=new TOrder();order.setOrderBianhao(new SimpleDateFormat(yyyyMMddHHmmss).format(new Date();order.setOrderDate(new SimpleDateFormat(yyyy-MM-dd HH:mm:ss).format(new Date();order.setOrderZhuangtai(no);/未受理order.setOrderUserId(user.getUserId();order.setOrderJine(cart.getTotalPrice();System.out.println(odderFukuangfangshi+%);order.setOdderFukuangfangshi(odderFukuangfangshi);order.setOdderSonghuodizhi(odderSonghuodizhi);orderDAO.save(order);for (Iterator it = cart.getItems().values().iterator(); it.hasNext();)TOrderItem orderItem = (TOrderItem) it.next();orderItem.setOrderId(order.getOrderId();orderItem.setGoodsId(orderItem.getGoods().getGoodsId();orderItemDAO.save(orderItem);TGoods tg=goodsDAO.findById(orderItem.getGoods().getGoodsId();tg.setGoodsKucun(tg.getGoodsKucun()-orderItem.getGoodsQuantity();goodsDAO.attachDirty(tg);cart.getItems().clear();session.put(cart, cart);Map request=(Map)ServletActionContext.getContext().get(request);request.put(order, order);return ActionSupport.SUCCESS;public String myOrder()Map session= ServletActionContext.getContext().getSession();TUser user=(TUser)session.get(user);String sql=from TOrder where orderUserId=+user.getUserId();List orderList=orderDAO.getHibernateTemplate().find(sql);Map request=(Map)ServletActionContext.getC

温馨提示

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

评论

0/150

提交评论