晨光文具网上商城_第1页
晨光文具网上商城_第2页
晨光文具网上商城_第3页
晨光文具网上商城_第4页
晨光文具网上商城_第5页
已阅读5页,还剩45页未读 继续免费阅读

下载本文档

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

文档简介

PAGEI摘要随着社会需求的不断加大,科学技术也发展得越来越迅速,国内互联网使用人数的日趋上涨,互联网给我们生活的各个方面都提供了非常大的便利,网上购物就是这些便利之中非常突出的一方面,它是一种企业对消费者的B2C电商模式。本毕业设计就是模拟晨光文具网店模式开发的,设计了一个晨光文具网上商城,包括前台和后台的一些商品浏览、购物和管理的操作。在此文中,将介绍晨光文具网上商城的结构和功能还有其用到的一些工具和实现过程。具体包括商城前台用户的注册和登录,商品的分类展示和推送浏览以及加入购物车,订单的查看和付费等一系列操作。本设计是在MyEclipse的Java视图环境下设计的,数据库采用的是MySQL,商城的设计与实现是基于JavaWeb的。商城操作界面友好,在浏览器上能够稳定运行,具有可行性,给人们便捷良好的购物体验,也提高了管理人员的工作效率。关键词网上商城MyEclipseJavaWeb数据库AbstractWiththeincreasingofsocialdemand,alsomoreandmorerapiddevelopmentofscienceandtechnology,increasinglyriseinthenumberofdomesticInternetuse,Internetgivesusallaspectsoflifeareverybigconvenience,onlineshoppingistheconvenienceofaveryprominentontheonehand,itisakindofenterprisetoconsumermodelofB2Celectricalbusiness.Thisgraduationdesignistosimulatethedevelopmentofchenguangstationerystoremodel,designedachenguangstationeryonlinemall,includingthefrontandbackofsomegoodsbrowsing,shoppingandmanagementoperation.Inthispaper,thestructureandfunctionofchenguangstationeryonlinemallaswellassometoolsandimplementationprocessareintroduced.Specifically,itincludestheregistrationandloginofusersinthefrontdeskofthemall,theclassificationdisplayandpushbrowsingofcommodities,aswellasaseriesofoperationssuchasaddingtotheshoppingcart,orderviewingandpayment.ThisdesignisdesignedintheJavaviewenvironmentofMyEclipse,thedatabaseisMySQL,andthedesignandimplementationofthemallisbasedonJavaWeb.Themallhasafriendlyoperationinterface,stableoperationonthebrowser,andfeasibility,whichgivespeopleaconvenientandgoodshoppingexperience,andimprovestheworkingefficiencyofmanagers.Keywords:OnlineMallMyEclipseJavaWebDatabase长春工程学院毕业设计(论文)长春工程学院毕业设计(论文)PAGEII目录TOC\o"1-2"\h\z\u1引言 11.1课题背景 11.2商城设计思想 11.3项目内容 11.4商城设计目标 12系统需求分析 22.1技术经济分析 22.2模块需求分析 23项目开发的技术准备 33.1 JavaWeb介绍 33.2 MySQL介绍 43.3相关技术介绍 44总体设计 64.1方案设计 64.2商城相关功能模块总体设计 74.3商城数据库设计 75 详细设计 135.1用户注册界面设计 135.2用户登录界面设计 145.3商城首页设计 155.4商品详情界面设计 175.5购物车界面设计 185.6订单显示界面设计 195.7管理员登录界面设计 205.8管理员后台管理总体界面设计 215.9管理员管理分类信息界面设计 215.10管理员管理用户界面设计 235.11管理员管理商品界面设计 245.12管理员管理订单界面设计 256系统相关功能的测试及调试 266.1用户注册功能测试 266.2用户登录功能测试 286.3首页热门商品与最新商品显示功能测试 296.4订单相关功能测试 316.5购物车相关功能测试 326.6后台管理员登录功能测试 347遇到的问题及解决措施 358总结 35参考文献 38致谢 39附录 40长春工程学院毕业设计(论文)PAGE461引言1.1课题背景现代社会,科技发展日新月异,电子产品层出不穷,而第三次科技革命的产物互联网更是对我们的生活产生了巨大的影响,我们能够清晰的感受到它对我们生活方方面面的影响,如今科学技术飞速发展,生活节奏越来越快,在互联网的支持和快节奏的生活模式的催化下下,线上购物已经越来越成为一种潮流,人们可以方便快捷地获取信息,甚至挑选并购买自己心仪的产品。本商城是基于JavaWeb开发的的应用程序,根据晨光文具网店在MyEclipse环境下使用java编程语言结合MySQL数据库开发的晨光文具网上商城设计。1.2商城设计思想本商城主要采用基于B/S方式的多层次结构设计,数据库采用的是MySQL,降低商城开发成本,不仅具有易维护的优点,本身也比较安全稳定。1.3项目内容本商城主要用来实现晨光文具的网上购物流程。在浏览器中即可直接运行,方便简洁。商城的主要功能如下:(1)用户注册功能:用户可在商城首页免费注册账户,以便后续购买;(2)用户登录功能:已注册用户可凭借用户名和密码等信息登录网上商城;(3)用户查看商品功能:查看各文具商品的信息及价格;(4)购物车相关功能:已注册登录用户可以查看、删除、清空自己加入购物车的文具商品;(5)订单相关功能:已注册登录用户可以查看自己商品订单,并选择订单进行付款生成相关订单信息;(6)后台相关功能:管理员可查看已上架的文具商品、添加商品类别和信息、对用户订单进行编辑操作,还可管理商城已注册的用户;1.4商城设计目标在进行详尽的用户需求分析后,就本次毕业设计的要求设计出系统的设计目标。实现项目内容要求的各项基本功能:以晨光网店的经营模式为模型,设计一个能够对晨光文具进行线上销售的软件,该软件应该有以下功能:(1)实现用户的注册与登录。(2)查看最新商品和热门商品的详细信息。(3)商城用户在登录后进行购物车的查看、管理系列操作。(4)商城用户在登录后进行订单查看、管理系列操作。(5)商城管理员后台管理用户、订单、商品信息。2系统需求分析2.1技术经济分析如果晨光文具这个品牌的商品不存在线上销售方式,那么在文具行业中它会丢失很大的市场,如今人们都是在奋力努力加快自己前进的步伐来追赶社会的发展速度,稍不留意就会被这个竞争激烈的时代所淘汰,所以在网购时代的大背景下,很少有人会花时间一家家的挑选比较来购买文具,这时候晨光文具线上销售也就是晨光文具网上商城就显得尤其必要,不仅是在同行业其他品牌的激烈“竞走比赛”中没有掉队而丢掉市场,更方便丰富了人们的购物选择,可以实现便捷高效的办公学习生活。综合以上分析,采用本设计是抓住晨光文具线上市场、增加品牌影响力和利润、使企业顺应现代经济发展节奏、方便人们生活的捷径。2.2模块需求分析2.2.1商城用户用户信息中包含2个模块,分别是用户注册,用户登录。用户可在首页免费注册,在注册时需要填写相关资料以完成注册。用户可凭借注册时填写的用户名和密码等信息登录商城。2.2.2商品检索商品检索中包含3个模块,分别是商品分类查询,商品推送显示和商品详情显示。商品分类查询是用户可在商城首页根据分类选择想要购买的商品并查看商品相关信息。商品推送显示是在首页显示最热门和最新的商品的简单信息。商品详情显示是进入到单个商品信息显示页面中,会显示商品的价格、参数等详细信息。2.2.3商城管理员商城管理员的操作中包含3个模块,分别是订单管理,商品管理和用户管理。商城管理员在登录商城管理系统后可管理用户的订单。商城管理员在登录商城管理系统后可管理已上架商品信息和分类信息。商城管理员在登录商城管理系统后可管理商城已注册的用户信息。2.2.4商城购物商城购物包含2个模块,分别是用户购物车管理和订单查看。商城已注册登录用户可管理自己的购物车。商城已注册登录用户可查看自己的订单。3项目开发的技术准备相关软硬件技术支持:计算机配置:华硕CPU:Intel四核2940内存:4GB硬盘500GB操作系统:Windows1064位开发环境:MyEclipse10开发语言:JAVA数据库:MySQLJavaWeb介绍Java语言本身就是一种高级计算机语言,它是由SUN公司(已被Oracle公司收购)于1995年5月推出的一种可以编写跨平台应用软件、完全面向对象的程序设计语言。自问世以来,与之相关的技术和应用发展得非常快。在计算机、移动电话、家用电器等领域中,Java技术无处不在。SUN公司将Java划分为三个技术平台,它们分别是JavaSE(JavaPlatformStandardEdition)、JavaEE(JavaPlatformEnterpriseEdition)、JavaME(JavaPlatformMicroEdition)。Web是万维网(WorldWideWeb)的简称,Web技术诞生于欧洲原子能研究中心(CERN)。1989年3月,CERN的物理学家TimBerners-Lee提出了一个新的因特网应用,命名为Web,其目的是让全世界的科学家能利用因特网交换文档。同年,他编写了第一个浏览器与服务器软件。1991年,CERN正式发布了Web技术。更多的人开始了解计算机网络是因为Web(万维网)的出现,通过Web使用网络,享受网络带来的便利。Web对用户和用户的机器要求都很低,用户机器只要安装浏览器软件就可以访问Web,而用户只要了解浏览器的简单操作就可以在Web上查找信息、交换电子邮件、聊天等。现在,涉及到人们日常生活的各个方面的大量信息与服务都是由Web提供,很多人已经越来越离不开Web了。MySQL介绍数据库是指长期保存在计算机的存储设备上,按照一定规则组织起来的数据集合,可以实现各种用户或应用之间的共享。数据库管理系统指一种操作和管理数据库的大型软件,用于建立、使用和维护数据库,对数据库进行统一管理和控制,以保证数据库的安全性和完整性。1985年,三个瑞典人DavidAxmark、AllanLarsson和MichaelWidenius成立了一家公司,这就是MySQLAB的前身,这个公司最初并不是为了开发数据库产品,而是在实现想法的过程中需要一个数据库并希望能够使用开源的产品。但在当时并没有一个合适的选择。因此自己设计了一个利用索引顺序存取数据的方法,也就是ISAM(IndexedSequentialAccessMethod)存储引擎核心算法的前身。此软件以创始人之一MichaelWidenius女儿My的名字命名。MySQL的Logo为海豚标志,代表速度、动力、精确等MySQL所拥有的特性。随着该数据库的功能不断完善、性能的不断提高,可靠性也不断增强。2005年10月,发布了里程碑的一个版本,MySQL5.0,在5.0中加入了游标、存储过程、触发器、视图、事务的支持。在5.0之后的版本里,MySQL明确的表现出迈向高性能数据库的发展步伐。MySQL公司与2008年1月16号被SUN公司收购,而在2009年Oracle公司又收购了SUN公司。MySQL的发展前途一片光明。MySQL是关系型数据库系统,支持标准的结构化查询语言,同时MySQL为客户端提供了不同的程序接口和链接库。MySQL是一款免费开源、小型的关系型数据库管理系统,具有免费使用、配置简单、稳定性好、性能优良的特点。许多中小型网站为了降低网站总体拥有成本而选择MySQL作为网站数据库。3.3相关技术介绍3.3.1商城设计环境相关介绍商城设计在MyEclipse10的平台上,使用JDK和Tomcat完成,JDK我用的是1.7的版本,Tomcat用的是版本7。所有的Java应用程序都要以JDK作为前提,以它作为程序的基石。Tomcat服务器也是商城必不可少的配置,安装并且启动Tomcat服务器,我们的程序才得以正确运行并在浏览器上显示相关的页面。3.3.2JavaWeb主要框架介绍JavaWeb编程技术中主要包含的框架有Hibernate框架、Struts2框架等等。Hibernate是一个开放源代码的对象关系映射框架,Hibernate的第一个版本于2001年年底发布,2003年6月发布了Hibernate2,2005年3月,Hibernate3正式发布。Hibernate官方网站的网址为http://www.H/,从这个网站可以获得所有Hibernate发行包和Hibernate的详细信息。Hibernate软件包包括HibernateCore、HibernateShards、HibernateSearch、HibernateTools、HibernateMetamodelGenerator等,其中HibernateCore软件包包含Hibernate所有核心功能。在JavaWeb应用程序中要添加Hibernate的支持,需要将有关的库文件复制到WEB-INF/lib目录中,如果只需要Hibernate基本支持,应将Hibernate软件包解压目录的lib/requried目录中的JAR文件复制到WEB-INF/lib目录中,运行Hibernate应用程序可能还需要其他库文件,如数据库驱动程序库,应将这些库也添加到WEB-INF/lib目录中。Struts2框架实现了MVC设计模式。其中,模型(Model)层的工作由JavaBean完成,视图(View)层的工作由JSP完成,包含页面设计代码用来与用户交互,控制器(Controller)层的工作由Servlet完成,用来控制程序之间的相互调用。Struts2主要包括控制器、Action对象、视图JSP页面和配置文件等。以上所有是Struts2成为构建JavaWeb应用的基本框架。ApacheStruts是用于开发JavaWeb应用程序的开源框架。最早由CraigR.McClanahan开发,2002年有Apache软件基金会接管。Struts提供了Web应用开发的优秀框架,是世界上应用最广泛的MVC框架。然而,随着Web应用开发的需求日益增长,Struts已不能满足需要,修改Struts框架已成为必要。因此,ApacheStruts小组和另一个JavaEE框架WebWork联手共同开发了一个更高级的框架Struts2。Struts2结合了Struts和WebWork的共同优点,对开发者更友好,具有支持AJAX、快速开发和可扩展等特性。它已成为构建、部署和维护动态的、可扩展的Web应用框架。Struts2并不是Struts的简单升级,可以说Struts2是一个既新又不新的MVC框架。相对于Struts而言,Struts2从设计思想到框架结构和Struts的区别非常大,然而它是在WebWork的基础上转化而来,并不是一个完全新开发的MVC框架。3.3.3Servlet、JSP和EL服务器端小程序(Servlet),它是一种Java程序,使用ServletAPI及相关类编写,使用它可以使得Web服务器的功能更加丰富。JSP(JavaServerPages)是一种动态页面技术,它的主要目的是将表示逻辑从Servlet中分离出来,在JSP中可以通过静态包含和动态包含实现代码重用。表达式语言(ExpressionLanguage,EL)是JSP2.0新增加的特性,它是一种可以在JSP页面中使用的数据访问语言,可以自然地输出JavaBean中的相关属性信息。它的语法是以美元$符号开始,再加上{}这样两个括号,代码位于括号中间,例如在本商城之中取出商品名称:${p.pname}。用EL输出null值的时候,程序也不会抛出空指针异常,作为一种数据访问语言,EL有自己的运算符、语法和保留字。EL并不是一种通用的编程语言,它只是一种数据访问语言。它很简单,也不需要附加了解其他语言知识,甚至不用学习Java语言就可以使用表达式语言。4总体设计4.1方案设计晨光文具网上商城是一个有关于晨光文具的线上交易网站,可用于网上商城的商品显示用户的注册、登录、购物,是面向所有商城用户的一个线上文具商城。开始设计这个网上商城之前,我参考了晨光文具在淘宝京东的大型线上购物平台上的官方旗舰店,浏览了它的页面设计与商品显示等相关信息,在图书馆也查阅了有关JavaWeb程序设计的大量案例资料,做了合理的需求分析和可行性分析,构建出了商城的基本骨架。其基本工作主要是基于晨光文具的一个线上商城,商城用户可以在此进行选购晨光品牌商品。需求分析是软件开发过程中的一个关键性的环节,它的成功与否决定着软件产品的质量。本次毕业设计的晨光文具网上商城所需实现的内容如下:用户操作流程模型:其主要内容包括用户注册,登录,查看商品信息,加入购物车,结算,订单查询等过程。其流程模型具体如下图所示:用户操作流程模型:注册——>登录——>加入购物车——>提交订单——>结算——>退出用户订单结算流程:查看购物车——>确认购物车——>生成订单——>去付款——>退出商城后台管理员管理:管理员在登录商城后台管理系统后,可以对商城已上架商品、商品分类、商城已注册用户、用户订单进行相关管理操作。4.2商城相关功能模块总体设计根据商城功能分析,晨光文具网上商城可以分为两大模块:商城前台用户功能模块和商城后台管理员功能模块,这两个模块下都有若干个子模块,用来分别实现用户功能和管理员的功能,如图4-1所示是整个系统的功能总体设计图。图4-1功能总体设计图4.3商城数据库设计商城实体包括用户、商品、订单、分类、管理员。数据库分为商城已注册的用户表(user)、用户的订单表(orders)、订单详情的信息表(orderitem)、商品的全部分类表(category)、商品的详情信息表(product)、管理员信息表(admin)。4.3.1数据库的逻辑设计(1)用户表(user)设计用户表包含用户编号(主键非空)、用户名称、用户密码等用户信息,在商城的注册登录还有管理员后台管理用户等操作中都需要对数据库中的用户表进行操作,使用或更新表中的相关信息。如表4-1所示是用户表的表结构:表4-1用户表(user)序号英文名中文名类型是否为主键允许为空1uid用户编号Varchar(32)是否2username用户名称varchar(20)否否3password用户密码varchar(20)否否4name真实姓名varchar(20)否否5email用户邮箱varchar(20)否否6telephone用户电话varchar(20)否否7birthday出生日期date否是8sex用户性别varchar(10)否是9state激活状态int否是10code激活码varchar(64)否是订单信息表(orderitem)设计订单信息表包含了外键oid和pid,在商城的显示订单详情操作中需要对数据库中的订单信息表进行操作,使用或更新订单信息表中的相关信息。如表4-2所示是订单信息表的表结构:表4-2订单信息表(orderitem)序号英文名中文名类型是否为主键允许为空1itemid编号varchar(32)是否2count购买数量int否是3subtotal小计double否是4pid商品idvarchar(32)否是5oid订单idvarchar(32)否是订单表(orders)设计订单表包含订单编号(主键非空)、订单时间、订单金额等订单信息,在商城的查看订单还有管理员后台管理订单等操作中都需要对数据库中的订单表进行操作,使用或更新表中的相关信息,表中的外键uid引用用户表,表示商城用户和用户订单是一对多的关系,一个用户可以有多个订单,如表4-3所示是订单表的表结构:表4-3订单表(orders)序号英文名中文名类型是否为主键允许为空1oid订单编号varchar(32)是否2ordertime订单时间datetime否是3total订单金额double否是4state订单状态int否是5address收货地址varchar(30)否是6name订单名称varchar(20)否是7telephone联系电话varchar(20)否是8uid用户编号varchar(32)否是商品分类表(category)设计商品分类表包含类别编号(主键非空)、类别名称,在商城用户按分类查看商品详情还有管理员后台管理商品分类等操作中都需要对数据库中的商品分类表进行操作,使用或更新表中的相关信息。商品分类和商品是一对多的关系,一个分类可以包含多个商品。如表4-4所示是商品分类表的表结构:表4-4商品分类表(category)序号英文名中文名类型是否为主键允许为空1cid类别编号varchar(32)是否2cname类别名称varchar(20)否否管理员表(admin)设计管理员负责后台相关功能,和前台用户操作不相关联。如表4-5所示是管理员表的表结构:表4-5管理员表(admin)序号英文名中文名类型是否为主键允许为空1adminid管理员编号char(32)是否2adminname管理员名称varchar(50)否否3adminpwd管理员密码varchar(50)否否商品信息表(product)设计商品信息表包含商品编号(主键非空)、商品名称等商品信息,在商城用户查看商品详情、首页显示热门商品和最新商品还有管理员后台管理商品等操作中都需要对数据库中的商品信息表进行操作,使用或更新表中的相关信息。外键c_id引用分类表。如表4-6所示是商品信息表的表结构:表4-6商品信息表(product)序号英文名中文名类型是否为主键允许为空1pid商品编号varchar(32)是否2pname商品名称varchar(32)否否3market_price市场价格varchar(50)否是4shop_price商城价格double否否5pimage商品图片varchar(200)否是6pdate商品日期date否是7is_hot热门商品int否是8pdesc商品描述varchar(255)否是9pflag上架商品int否是10cid类别编号varchar(32)否是E-R模型图对于网上商城而言,允许多个用户同时登录,用户也可以查看或购买多个商品,也可以有多个订单,但每个用户只有一个购物车,购物车中可放有多个商品,管理员可以管理多件商品和多个订单以及多个用户。如图4-2是商城概念模型的总E-R图:用户用户登录商城商品购物车订单查询查看查看管理员管理管理商城nnnnnn11111111图4-2晨光文具网上商城总E-R图4.3.3各个分E-R图商品商品编号类别商城价格描述图片市场价格······图4-3商城商品E-R图用户用户用户名密码地址邮箱性别电话图4-4商城用户E-R图订单订单订单编号用户名收货地址练习电话订单小计订单数量订单状态用户编号图4-5用户订单E-R图购物车购物车商品名称市场价格商城价格商品数量图4-6用户购物车E-R图管理员管理员密码名称编号图4-7后台管理员E-R图详细设计5.1用户注册界面设计用户注册:非商城注册用户首次进入商城只能浏览商品,需要注册后才能登录到网上商城进行购买商品操作。在注册时要填入自己的相关信息,填写用户名、密码、邮箱和电话等相关信息。系统在通过验证填写的系列信息正确后提示用户注册成功去激活,否则会提示填写信息有误,注册失败,重新注册!用户在注册时需要填入如用户名、密码、邮箱、电话等信息,这些信息由用户在前台界面输入,在UserServlet类中编写注册方法,使用工具类BeanUtils中的populate()方法将所有信息封装到user对象中,调用service层的注册方法完成注册操作,该方法会将用户填写的注册信息保存到数据库中,并且发送激活邮件给用户邮箱。注册界面如图5-1所示。图5-1用户注册界面5.2用户登录界面设计用户登录时要验证用户名、密码等验证信息是否正确还有用户的激活状态,只有在信息正确并且处于激活状态时才可以成功登录。登录成功之后,若勾选了记住用户名,下一次再登录的时候,会展示出来用户名,实现时要修改登录方法的逻辑,登录成功之后,判断是否勾选了记住用户名,若勾选了,将用户名保存到cookie中,这个时候还要将用户名进行编码,避免中文乱码,最后在登录界面加载成功的时候需要从cookie中获取用户名且展示出来。该模块的主要作用是为用户提供注册和登录网上商城的身份,并判断用户名和密码是否完全吻合。用户登录后可以浏览商品并将商品加入购物车,在购物车中增加或删除商品,查看自己的订单信息。管理员是后台管理者,不参与商城前台用户的操作环节,因此管理员的登录界面和用户的登录是完全分开的,这样方便管理,也避免了因后台数据泄露导致的一系列安全问题给商城和用户带来经济损失,给商城和用户更好的安全保障。商城用户登录界面如图5-2所示。图5-2商城用户登录界面如图5-3是商城用户的登录流程图:提示用户先行激活!提示用户先行激活!用户登录该用户是否激活登录成功!信息验证YY提示用户名或密码出错!NN图5-3商城用户登录流程图5.3商城首页设计在商城首页中用户可以根据首页显示的热门商品和最新商品的推送或者是按商品分类来挑选商品,并加入购物车,生成订单进行结算。首页中商品的图片及文字是网页的超链接,用户可以通过点击查看商品的参数介绍,查看商品详情考虑是否购买此商品。热门商品和最新商品是根据数据库中商品表中的热门和新品字段的设置来从数据库中推送显示,前台页面使用EL表达式取出所需的商品表中的商品信息。首页中导航栏主要用来显示商品分类、用户的注册、登录以及登录成功后查看购物车和订单的链接模块,操作页面统一友好,具有良好的用户体验。在首页的显示中,还加入了轮番图动态显示,增加商城的设计美感也宣传了晨光品牌,主要运用了div+css页面布局技术,将内容更加美观地展示出来,后台还需要把其他页面与首页显示的功能链接结合到一起已完成整套的功能操作。图5-4首页轮播图界面图5-5首页热门商品界面图5-6首页最新商品界面5.4商品详情界面设计用户在成功登录到网上商城后,可以点击热门或最新商品来查看商品信息,也可以通过分类来查看,商品的图片和下方的名称都是通往商品详情的链接,点击均可以查看商品详情,在ProductServlet中的getById方法获取商品的pid,调用Service中的方法获取商品并返回,Service层中会调用Dao层中的方法实现。商品都是分页展示,在ProductServlet中编写findByPage方法获取pagenumber、cid、pagesize,调用服务层中的方法获取分页数据并返回,服务层中的方法会再去调用Dao层中的方法去实现,这样子的分页显示会使得页面更加简洁友好。商品详情包括商品的名称、编号、价格、介绍等信息,使得用户对商品有一个更好的了解,方便用户选购商品,在此页面上还有加入购物车的操作,连接购物车页面。有关商品的方法都封装在ProductServlet类之中。图5-7商品详情界面5.5购物车界面设计用户如果点击加入购物车,就可以查看自己加入的商品,购物车详情中包含商品名称、价格、加购数量、钱款小计等相关信息,如果用户心意有变还可以在购物车中进行添加商品、移除商品、清空购物车商品、提交订单等的操作。添加、移除等的操作都封装在CartServlet类中。点击加入购物车向CartServlet发出请求,在CartServlet中编写添加方法,通过pid获取商品,通过session获取购物车对象,封装CartItem加入购物车,再调用添加方法。清空和移除操作都是在CartServlet中编写相应方法,获取封装相应对象,再结合服务层、Dao层中的方法执行相关操作。如果用户在没有向购物车中添加商品的情况下查看自己的购物车详情或执行移除、清空操作,则会提示用户购物车中空空如也,先去商城逛逛,选择商品加入购物车。图5-8购物车显示界面5.6订单显示界面设计订单显示界面显示用户提交到订单中的商品,并可查看订单的状态。订单显示包括用户提交的订单的编号还有商品的相关信息,点击去付款就可以到付款界面,填写收货的相关信息就可以下单了。有关订单的操作方法都封装在OrderServlet类之中。在OrderServlet类中编写保存方法,封装订单对象,调用服务层(Service)中的方法,服务层(Service)中的方法会去调用Dao层中的相应方法,执行生成订单操作。订单显示也是分页显示,Dao层中的方法将查询到的结果封装成map将查询结果的每一条记录封装成map,将所有的map放入list中返回,遍历map的list,获取每一个订单的详情,使用beanutils进行封装即可,再去封装orderitem和product对象,最后将orderitem对象放入订单项列表中,获取订单详情操作和此处类似,不再赘述。付款时在订单详情页面上写收货人信息,选择支付银行,点击"确认订单",向商城发送请求。在Orderservlet中编写支付方法,接受收货人信息、订单号调用Service获取订单,设置收货人信息再更新订单。支付成功之后,订单状态会相应改变。在OrderServlet类中编写callback方法获取第三方发送过来的数据(order_id),通过id获取订单,修改订单的状态,更新订单状态。图5-9订单显示界面图5-10填写收货信息界面图5-11订单付款界面5.7管理员登录界面设计管理员功能操作和用户功能操作是分开进行的,用户的登录在前台,管理员的登录则在后台。但是方法都是封装在UserServlet之中的。管理员输入用户名和密码后,点击登录按钮时,表单会向UserServlet类发出请求,在UserServlet类中调用管理员登录方法完成登录,在这个方法中会对管理员填入的信息进行验证,并在数据库中的admin表中查找匹配的管理员。如果没有通过验证则返回错误提示信息,然后返回后台管理登录界面。如图5-12为管理员登陆界面:图5-12管理员登录界面5.8管理员后台管理总体界面设计管理员在后台可以对已注册的商城用户、商品、商品分类、用户订单进行管理。管理员的这些操作通过dao层中的对应方法访问数据库,通过相关语句将数据库中的数据内容查询出来并显示到页面中。在后台主页面的编写中使用了dtree的方法,在左侧的树上上添加一个连接"分类列表",点击分类列表将所有的分类展示在右边的主页面上。图5-13商城管理系统首页界面5.9管理员管理分类信息界面设计后台管理员在管理分类时可以查看分类、添加分类、编辑修改分类、删除分类,这些相关操作方法都封装在AdminCategoryServlet类之中。在left.jsp上添加一个连接父节点"分类管理",在分类管理下面添加一个子节点"分类列表",在AdminCategoryServlet类中编写findAll方法调用service查询所有分类,返回一个list,并请求转发置分类显示页面。添加分类时发送给AdminCategoryServlet一个请求,在该类中编写save方法获取cname,设置cid封装category对象,调用服务层(Service)中的方法完成添加操作,服务层(Service)中的方法会去调用Dao中的实现方法保存,在重定向到分类列表页面显示。图5-14查看所有分类界面图5-15添加分类界面图5-16编辑修改分类界面5.10管理员管理用户界面设计后台管理员可以查看在商城的已注册用户,包括用户的性别、用户名、密码、邮箱、激活状态等相关信息,还可以编辑修改用户信息、删除用户。具体操作与后台分类管理大同小异,此处不在赘述。图5-17管理员管理用户界面图5-18管理员编辑修改用户界面5.11管理员管理商品界面设计后台管理员可以在管理商品时可以查看已上架商品、添加商品,编辑修改商品信息、删除商品,添加商品的操作方法封装在AddServlet类之中,查看已上架商品、编辑修改商品信息、删除商品的一系列操作方法封装在AdminProductServlet类之中。具体操作与后台分类管理大同小异,此处不在赘述。图5-19为查看已上架商品功能截图、图5-20为添加商品功能截图、图5-21为编辑修改某一上架商品信息功能截图:图5-19管理员查看已上架商品信息界面图5-20管理员添加商品界面图5-21管理员编辑修改商品信息界面5.12管理员管理订单界面设计后台管理员在管理订单时可以查看所有订单和订单详情,并且删除订单,这些相关操作方法都封装在AdminOrderServlet类之中。如图5-22是管理员查看订单界面:图5-22查看订单界面6系统相关功能的测试及调试 到商城设计的后期,基本的功能都已经实现,但是在完善的过程中还是需要很多的代码调试和功能测试,只有在一步步的调试和测试的过程中理想的功能操作和页面才慢慢显示出来。这样也能够更好的确保软件的质量,及时更改系统错误,提高商城的稳定性,使其功能更加完善。6.1用户注册功能测试表6-1商城用户注册模块测试用例字段名称描述标识符C1测试项商城主页中的注册链接,用户注册的功能测试输入标准1.打开商城主页,点击相应的注册链接。2.输入一些正确的用户名、密码、邮箱等注册信息,点击“注册”。4.漏输入用户名或密码、邮箱等信息,点击“注册”。输出标准1.模块未做任何操作,单击商城其他链接,能够正常跳转,无提示信息。2.在输入正确的用户名、密码、邮箱等注册信息时,能够成功注册,提示去激活。3.在输入非法登录信息或者漏填信息时,显示注册失败。测试目标:用户注册功能实现;测试环境:MyEclipse中借助Tomcat服务器运行商城项目,通过浏览器显示结果;输入数据:用户填写用户名、密码、邮箱、真实姓名等相关信息;测试步骤:在MyEclipse中打开Tomcat服务器并在此条件下运行商城项目,在浏览器上出现注册界面,用户在此界面上填写注册所需相关信息后点击注册按钮;预期结果:显示出注册成功去激活的信息界面以提示注册用户去激活。表6-2用户注册模块测试结果标识符C1测试结果激活不成功与预期的偏差正常应该点击激活邮件中的链接成功激活说明的问题用户注册模块未通过功能测试,还需继续调试如图6-1、图6-2为用户注册功能测试截图:图6-1用户注册提示激活测试图6-2用户激活测试6.2用户登录功能测试表6-3商城用户登录模块测试用例字段名称描述标识符C2测试项商城主页中的登录链接,用户登录的功能测试输入标准1.打开商城主页,点击相应的登录链接。2.输入一些正确的用户名、密码等信息,点击“登录”。3.输入一些非法的用户名、密码等信息,点击“登录”。4.漏输入用户名或密码等信息,点击“登录”。5.用户在未激活状态下,输入正确登录信息,点击“登录”。输出标准1.模块未做任何操作,单击商城其他链接,能够正常跳转,无提示信息。2.在输入正确的用户名、密码等登录信息时,能够正常登录,无提示信息。3.在输入非法登录信息或者漏填信息时,显示登录失败,提示用户名与密码不匹配。4.在未激活状态下,用户输入正确登录信息登录,提示先激活再登录。在用户登录页面中用户输入用户名和密码等相关信息后,点击登录,通过在数据库中的查询,会先验证信息的正确性和用户的激活状态,只有验证正确且已经激活后才可以成功登录,进入商城首页。输入错误的用户名或者密码会弹出用户名密码不匹配的错误提示。具体测试环境、测试步骤等相关操作和用户注册类似,此处不再赘述。表6-4用户登录模块测试结果标识符C2测试结果记住用户名时用户名显示乱码与预期的偏差正常应该正确显示用户名说明的问题登录模块未通过功能测试,还需继续调试如图6-3、图6-4为用户登录信息验证测试截图:图6-3用户登录信息验证测试图6-4用户登录激活状态验证测试6.3首页热门商品与最新商品显示功能测试表6-5商城首页显示热门商品与最新商品模块测试用例字段名称描述标识符C3测试项商城首页显示热门商品与最新商品的功能测试输入标准打开商城首页,下方能看见最新商品和热门商品的信息显示。输出标准能够正确显示热门商品和最新商品,与数据库中的商品设置相匹配。表6-6商城首页显示热门商品与最新商品模块测试结果标识符C3测试结果正常操作无任何异常处理出现与预期的偏差无说明的问题商城首页显示热门商品与最新商品模块通过了功能测试如图6-5、图6-6分别是首页显示热门商品、最新商品功能测试的截图:图6-5首页热门商品显示图6-6首页最新商品显示6.4订单相关功能测试表6-7商城前台订单模块测试用例字段名称描述标识符C4测试项商城前台订单的查看与付款功能测试输入标准打开商城首页,点击“我的订单”链接。输出标准用户未登录时,提示用户先登录用户登录后,点击“我的订单”,显示订单相关信息。用户登录后,进入“我的订单”,点击“去付款”,进入付款页面。表6-8商城前台订单模块测试结果标识符C4测试结果正常操作无任何异常处理出现与预期的偏差无说明的问题商城前台订单模块通过了功能测试如图6-8为成功查看订单界面截图、图6-9为订单付款界面截图:图6-7检查权限界面图6-8订单显示界面图6-9订单付款界面6.5购物车相关功能测试表6-9商城前台购物车模块测试用例字段名称描述标识符C5测试项商城前台购物车查看、添加、移除、清空相关操作功能测试输入标准1.打开商城首页,点击“购物车”链接。2.未登录状态点击“购物车”。3.登录后点击“购物车”,显示购物车。4.登录后将商品添加进入,再点击“购物车”,显示购物车。5.登录后点击“购物车”,显示购物车,点击其中某一项的“删除”,显示购物车6、登陆后点击“购物车”,显示购物车,点击其中的“清空”,显示购物车。输出标准1.用户未登录时点击“购物车”,提示用户先登录。2.用户登录后,点击“购物车”,显示用户加入购物车中的商品相关信息。3.用户登录后,点击“购物车”,点击某一项进行删除,显示删除后的购物车信息。4.用户登录后,将某一商品加入购物车,点击“购物车”,显示添加商品之后的购物车信息。5.用户登录后,进入购物车,点击“清空”,显示显示购物车空空如也的显示界面,提示去商城逛逛。对购物车的功能主要是查看购物车商品、添加商品进购物车、从购物车移除商品、清空购物车。主要测试这些功能是否正常。表6-10商城前台购物车模块测试结果标识符C5测试结果正常操作无任何异常处理出现与预期的偏差无说明的问题商城前台购物车模块通过了功能测试用户未登录时提示检查权限先登录图6-10提示检查权限先登录向购物车中添加商品图6-11向购物车中添加商品从购物车中移除商品图6-12从购物车中移除商品清空购物车,购物车中无商品图6-13清空购物车6.6后台管理员登录功能测试表6-11后台管理员登录模块测试用例字段名称描述标识符C6测试项管理员登录模块的功能测试输入标准1.打开商城后台,输入一些正确的用户名、密码等信息,点击“登录”。2.打开商城后台,输入一些非法的用户名、密码等信息,点击“登录”。3.漏输入用户名或密码等信息,点击“登录”。输出标准1.在输入正确的用户名、密码等登录信息时,能够正常登录,无提示信息。2.在输入非法登录信息或者漏填信息时,显示登录失败,提示用户名与密码不匹配。表6-12后台管理员登录模块测试结果标识符C6测试结果正常操作无任何异常处理出现与预期的偏差无说明的问题管理员登录模块通过了功能测试如图6-14为后台管理员登录模块测试截图:图6-14

管理员登录提示错误测试截图遇到的问题及解决措施(1)记住用户名时中文用户名乱码问题。这个问题是在测试过程中发现的,勾选记住用户名之后再次登录时用户名那一栏没有正确显示用户名,而是一串乱码,后来查阅资料发现是没有给它编码的问题,在Cookie中进行中文编码就解决了。(2)首页展示热门商品和最新商品是商品介绍字数控制问题。这个问题也是在测试过程中发现的,运行时发现商品介绍的字数太长影响了页面布局,后面的字数会叠加到下一个商品上,显得非常混乱也很不美观,后面用了EL技术将字数控制在合适的范围,这样页面就比较有条理,具体代码:${fn:substring(p.pname,0,8)}(3)后台添加分类是图片添加初次成功,在运行项目不显示问题。问题原因是我们的项目是在Tomcat中,第一次添加商品成功后图片是正常显示的,但是再次编译项目时,Tomcat中的程序会被覆盖,而我们从计算机上加入的商城图片并不在Tomcat之中,所以之后商品图片就会看不见。解决办法是将商品图片加入到Tomcat之中,就不会出现这种现象。(4)注册时邮件中的激活链接问题。这个问题是由于我的电脑点不开那个链接,这个原因是由于我的电脑浏览器的某个尚不明确的配置导致,由于浏览器配置我目前还无法对它进行更改,所有在网上查阅资料寻找其他的解决办法,最后发现复制激活链接再到浏览器中粘贴上就可以成功激活了。(5)订单支付时银行支付通道问题。支付时银行的支付通道关闭,检查后发现银行的支付网站代码错误,在相关文件中更改到支付通道为开发的银行即可。后面又出现易宝支付的测试账号冻结问题,解决办法只能是自己注册一个,但是易宝平台只针对企业公司或者是商家来注册,所以最后我未能注册注册成功,但是付款功能在实现的时候所填写的收货人的相关信息在后台数据库中都能够成功写入并更新,由于次商城只是我个人的设计,并没有得到晨光公司的授权,不可能真正实现收付款与发货等操作,所以这也是从另一个角度显示支付功能的实现。8总结本次毕业设计我的项目是晨光文具网上商城,社会需求是科学技术发展的最大动力,在社会可行性上,本商城可以让人们很便利地在任何有网络的地方进行晨光品牌的文具选购,给人们安全、便捷、放心的购物体验,如今互联网发展迅速,网购越来越成为一股潮流而融入到人们的生活中。晨光文具网上商城采用的是JavaWeb技术,MySQL数据库支持,JavaWeb的相关技术较成熟,MySQL数据库库也越来越灵活可靠,所以商城在技术方面是可行的。商城程序在浏览器上即可运行,且商城程序的安装与运行并不会对计算机有任何影响,商城的操作界面美感友好,与现今绝大多的的网上商城没有较大的操作方式上的差异,故本毕业设计有很强的操作可行性。但是由于未能得到晨光品牌的授权,本系统只是完成了晨光文具在线上的展示与销售流程,并不能真正的进行商品购买,客户在浏览商品后真正想要购买时,可以注册一个易宝账户进行付款,但是只能够是测试,真正的购买得需要官方授权才能实现,所以在这一方面上商城还需要进一步完善。时间过得真快,已经到了毕业设计书写毕业论文的收尾阶段了,十几周以来,我从开始的一筹莫展慢慢努力,如今也即将完成了自己的毕业设计了。通过这段时间的设计和学习,我发现了自身的不足之处,学习能力也提高了很多。刚开始设计时只有一个构想,开题报告什么的都不知道从哪方面去写,动手进行商城的设计时我发现自己的知识储备是如此的匮乏,对商城没有一个整体的规划,拿着电脑就懵头懵脑的写,导致在这个过程中出现了很多错误,不是页面不是自己自己想象中的样式,就是根本没有实现设想中的功能,问题此起彼伏,往往是解决完这个那个又冒出来。所有后面我就在草稿纸上大概将我对商城功能和页面设计的一些想法和要求都尽可能细致的列出来,从前台到后台一项一项的去完成,这样子就有条理一些,自己心中也有个总体的规划。在完成相关功能时,我遇见了很多问题也查阅了很多资料,不管是我的运行环境还是相关代码都出现过错误。在我的商城项目做到一半的时候,不知道什么原因,我的Eclipse出现问题,有一个插件没有正常结束它的生命周期,导致我的项目卡住,好几天我都没有找出解决办法,这段时间我非常焦虑暴躁,后面在老师的建议下我改用MyEclipse来完成的。这个小插曲让我明白不管遇见什么问题,首先自己不要慌张,先积极地去寻找解决办法,实在没找着解决办法的时候就转换一下自己的思维,不要自己将自己困住,灵活一点。在相关代码方面,有很多细节问题我都是查阅资料来解决的,邮件激活问题、后台添加商品问题、商品介绍问题等等,都是查阅资料找到的解决办法,有可能找的资料自己看的时候并不是很懂其中的意思,所以我还会去找涉及到的相关技术的一些例子,通过范例来理解资料中的讲解,很大程度上加快了我的编码进度,还有在查阅资料时发现的一些良好的编码方法或是编码习惯,在排查错误和代码条理上帮了我很多,我的学习能力大大提高。在完成某一项功能的编码之后就会编译一下测试功能是否正常,在这个阶段我就发现了很多大大小小的错误或者说是不满意,但是我还算是比较耐心的利用图书馆的资源或者是通过网络来找寻解决办法,一个一个的解决、调试。毕业设计是我大学四年以来几乎是独自完成的一个最为细致的项目设计,在这段时间中非常感谢我的老师和同学的帮助,我真的学习到了很多,不管是专业技术方面还是学习能力或者说是心态方面,我都获益匪浅。长春工程学院毕业设计(论文)参考文献[1]沈泽刚,秦玉平.JavaWeb编程技术.北京:清华大学出版社,2014.[2].关东升,田登山.JSP网络程序设计.北京:邮电大学出版社,2011.8[3].崔洋,贺亚茹.MySQL数据库应用从入门到精通.北京:中国铁道出版社,2016.1[4]施瓦茨等.高性能MySQL(第3版)[M].北京:电子工业出版社,2013.5[5]沈泽刚,秦玉平.Java语言程序设计.北京:清华大学出版社,2010.9[6]王石磊.JavaWeb开发技术详解.北京:清华大学出版社,2014.1[7]马小军,张玉祥.软件工程基础与应用.北京:清华大学出版社,2017[8]孙宇霞等.Java编程从基础到应用.北京:清华大学出版社,2014[9]傅兵.软件质量和测试.北京:清华大学出版社,2017[10]王小科.JavaScript程序设计.北京:人民邮电出版社,2014.7.[11]陈恒编著.基于Eclipse平台的JSP应用教程[M].北京:清华大学出版,2015[12]刘鑫编著.JSP从零开始学:视频教学版[M].北京:清华大学出版社,2016[13]石志国,薛为民,董洁.JSP应用教程.北京:清华大学出版社.北京交通大学出版社,2004[14]王英英,李小威编著.MySQL5.7从零开始学.北京:清华大学出版社,2018[15]疯狂软件编著.Spring+MyBatis企业应用实战.北京:电子工业出版社,2017.1[16]李俊山等编著.数据库原理及应用(SQLServer).北京:清华大学出版社,2017[17]王斐主编.JavaWeb开发基础--从Servlet到JSP.北京:清华大学出版社,2014[18]QST青软实训编著.JavaWeb技术及应用.北京:清华大学出版社,2015致谢时光飞逝,我的大学生活伴随着毕业设计也步入最后阶段,回想起在长春工程学院的四年时光,有欢笑,有泪水,在学习上有过难题解决的喜悦,也有找不到解决办法的焦急与沮丧,但是不管是哪一种情况,一路走来,我从来不是一个人。感谢长春工程学院,四年以来在学习环境和生活环境等各个方面给与我们学生最大的照顾,让我就算是离家几千公里也能够舒适的在这里学习,没有学校的精心培育,我也不能顺利的在这里学习生活直至毕业,祝愿学校越来越好!感谢学校的老师们四年来不辞辛苦的教育我们,不管是在学习上还是在生活上都无微不至的关心我们,在我们遇到问题的时候耐心、细致的帮助我们找寻解决办法。就在这最后的阶段,我在完成毕业设计的时候,遇见自己想不通的问题时,我的老师们都抽时间帮助我,不管是初期的文档编写还是后面的程序设计还有如今的论文书写,他们都尽心尽力帮我找出我没发现的问题,指导我去解决问题,希望老师们身体健康,工作顺利!感谢我的同学们四年来对我的包容和帮助,大学四年我们待在一起的时间最长,生活上我有很多毛病,你们都包容我,给我合适的建议引导我改正;一起学习讨论问题时指出我的错误,和我一起找问题正解,希望同学们乘风破浪,前程似锦!感谢这最美好的四年中我所遇到所有的一切!附录用户相关代码://用户模块publicclassUserServletextendsBaseServlet{ privatestaticfinallongserialVersionUID=1L; //用户退出 publicStringexit(HttpServletRequestrequest,HttpServletResponseresponse)throwsServletException,IOException{ request.getSession().invalidate(); response.sendRedirect(request.getContextPath()); returnnull; } //用户登录 publicStringlogin(HttpServletRequestrequest,HttpServletResponseresponse)throwsServletException,IOException{ try{ //获取用户名和密码 Stringusername=request.getParameter("username"); Stringpassword=request.getParameter("password"); //调用service完成登录,返回值为:true UserServiceus=newUserServiceImpl(); Useruser=us.login(username,password); //判断user,根据结果生成显示 if(user==null){ //用户名和密码不匹配 request.setAttribute("msg","用户名和密码不匹配请重新登录!"); return"/jsp/login.jsp"; } //用户名不为空,判断激活状态 if(Constant.USER_IS_ACTIVE!=user.getState()){ //未激活 request.setAttribute("msg","请先去激活再登录!"); return"/jsp/login.jsp"; } //登录成功,保存用户的登录状态 request.getSession().setAttribute("user",user); /**记住用户名**/ //判断复选框记住用户名是否勾选 if(Constant.SAVE_NAME.equals(request.getParameter("savename"))){ Cookiec=newCookie("saveName",URLEncoder.encode(username,"utf-8")); c.setMaxAge(Integer.MAX_VALUE); c.setPath(request.getContextPath()+"/"); response.addCookie(c); } //跳转至index.jsp response.sendRedirect(request.getContextPath()); }catch(Exceptione){ //TODOAuto-generatedcatchblock e.printStackTrace(); request.setAttribute("msg","用户登录失败"); return"/jsp/msg.jsp"; } returnnull; } //转至用户登录界面 publicStringloginUI(HttpServletRequestrequest,HttpServletResponseresponse)throwsServletException,IOException{ return"/jsp/login.jsp"; }商品相关代码:/**前台商品模块*/publicclassProductServletextendsBaseServlet{ privatestaticfinallongserialVersionUID=1; //商品详情 //商品分页展示 publicStringfindByPage(HttpServletRequestrequest,HttpServletResponseresponse)throwsServletException,IOException{ try{ //1.获取pagenumbercid设置pagesize intpageNumber=1; pageNumber=Integer.parseInt(request.getParameter("pageNumber")); intpageSize=12; Stringcid=request.getParameter("cid"); //2.调用service分页查询商品参数3个返回值pagebean ProductServiceps=newProductServiceImpl(); PageBean<Product>bean=ps.findByPage(pageNumber,pageSize,cid); //3.将pagebean放入request中,请求转发product_list.jsp request.setAttribute("pb",bean); }catch(Exceptione){ request.setAttribute("msg","分页查询失败!"); return"/jsp/msg.jsp"; } return"/jsp/product_list.jsp"; }}分类相关代码://分类模块publicclassCategoryServletextendsBaseServlet{ privatestaticfinallongserialVersionUID=1L; //跳转到添加页面 publicStringaddUI(HttpServletRequestrequest,HttpServletResponseresponse)throwsServletException,IOException{ //TODOAuto-generatedmethodstub return"/admin/category/add.jsp"; } //添加分类 publicStringsave(HttpServletRequestrequest,HttpServletResponseresponse)throwsServletException,IOException{ try{ //TODOAuto-generated

温馨提示

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

评论

0/150

提交评论