版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
TOC\o"1-3"\h\u1绪论1.1课题研究背景从21世纪以来,作为一种新型的经营模式,电子商务得到了长足的发展,特别是近几年信息速度高度发达的经济环境下,日益趋向成熟。并且人们已经逐步接受网上购物这一观念[1]。从电商的发展直到今天,各种电商网站崛起,不知不觉已经进入广大购物者的日常生活,影响购物者的购物习惯。细数各种电子商务平台的发展,淘宝每年双十一惊人的销售额,购买所需的电子产品就可以上京东,购买家用电器上可以找上苏宁易购的专卖店,买漂亮又上档次的衣服就选择唯品会,买全新的图书或者买二手图书都可以去当当,要便宜要实惠就上拼多多等等。对于买家而言,选择一个可以在网上交易的平台,注册成为卖家就可以无需成本的发布商品信息,供买家选择。商品信息可以一直存在,不像实体店那样需要很多人力看管,需要时间和金钱。而对于消费者而言,采用网上购物方式可以高效、便捷和低成本的实现购买活动。在中国发展网上购物已经具有良好的消费者基础,网上购物方式日趋被大家所接受。因此设计一个校园二手商品交易的小型电子商务网站具有很好的应用和开发前景[2]。1.2课题研究意义科学的发展,信息的爆炸,购物者更希望用最短的时间买到合心意又便宜的东西,电子商务便成为了人们日常生活的一部分。如今,网上买东西,足不出户便可以买到想要的东西。物美价廉更是成为了年轻人的主流消费方式。而电子商务也正在逐步的走向校园,学生可以在网上更方便的找工作、购物、以及买卖交易二手物品。综上所述,校园二手商品网上销售系统是有发展潜力的。二手物品在校园中是有市场的。将要毕业的学生,可以将二手物品,如书,自行车,暖壶,以及一些不方便携带的东西,可以卖给学弟学妹们,这样可以很大程度上避免浪费,符合本人国的可持续发展的国策。学弟学妹,可以用低廉的价格,买到自己想要而实用的物品,符合国家倡导的勤俭节约的政策。校园二手商品网上销售系统无论是对于买方还是卖方,可以达到双赢互助的。每个学校虽然在每年6月份都有跳蚤市场,来买卖二手物品,但是局限性很大。同学们往往在跳蚤市场逛了一天,却还是一无所获,没要买到自己想要的东西。有时候没有时间去逛跳蚤市场,或者昨天看见一件想买的物品今天卖那件物品的人没有来摆摊,无法做到时间和信息的同步。根据以上分析的三点表示,本二手网站的出现时很有必要的。1.3主要研究内容本网站是一个实用性很高的网站,主要用途是给交易双方提供一个交流展示平台。通过物品界面的显示,浏览者可以很直观的看到各种商品的基本信息,为了方便浏览,给各项商品进行了分类展示,浏览者也可以根据商品名称所带的关键字精确检索具体商品。对某个商品感兴趣的可以直接点击进入商品详情界面,里面详细的列出了各项商品信息,还提供了商品发布者的联系方式,真正想购买商品的用户可以自行联系卖家,确定好交易金额和交易时间和交易地点,而商品自带的交易地点和金额只作为参考和筛选。用户和卖家已经线下完成交易或者买家直接决定购买本商品,交易订单就可以生成。生成订单的一瞬间物品的状态会改变,以后不会在淘一淘界面展示,这样方便其它买家购物。同时买家可以对生成的订单进行查看和删除操作,卖家也可以对正在发布的物品进行查看和编辑操作,也可以删除正在发布的物品,卖家还可以看到自己发布过的已经卖出去的商品信息列表,也可以对其进行删除操作。当涉及到买家点击了购买商品但实际没有产生交易的情况,卖家可以向管理员进行反馈,管理员有权限去更改商品的状态和对违法用户进行处罚。管理员主要职责是对公告进行管理,即时替换公告图片,对违法信息进行删除,对违法用户进行警告严重者进行删号处罚,管理员拥有对发布物品信息查看和修改删除对功能,也要负责筛选用户发过来的反馈和投诉。本项目前端主要使用LayUI框架,后台使用SSM框架。要想做好本项目,需要提前学习关于layUI和SSM框架的相关知识。1.4论文内容组织论文首先介绍本次设计的研究背景、意义,简单的介绍了二手交易网站存在的背景和意义;然后描述了该网站的主要内容,包括怎样对网站进行操作,设计需要实现的基本功能,设计使用的工具和技术,以及本次设计我们需要了解和掌握的知识。围绕以上内容,本篇文章由以下的几个部分组成:第一章:介绍了本课题的研究背景、本课题的研究意义、本课题研究的主要内容以及论文需要完成的主要工作;第二章:本章简要的介绍了开发本二手网站设计需要用到的编程语言和相关工具,包括Java语言,JavaScript脚本语言,接着介绍了本项目采用的框架和技术,包括jQuery、layUI前端框架、SSM后台框架等。通过对这些知识的了解和学习,为完成本次设计进行基础知识的储备和相关技术的理解;第三章:本章对网站进行了进一步设计,让读者大体上了解本次设计的主要内容,包括系统的需求分析和系统的概要设计;第四章:对系统需要的数据库和数据表进行了相关的设计,让读者一目了然看出各个表之间的关系;第五章:详细的阐述了各个模块的功能和操作流程,阐述了相关知识和原理,进行了各种和功能的展示;第六章:系统调试与测试,对各项数据各种情况进行测试,描述系统的运行结果,总结设计中遇到的相关问题和解决方法,提升自己发现问题和解决问题的能力。2开发工具及技术介绍通过教查阅相关资料,结合自身的掌握情况,本项目决定采用Eclipse来创建一个Maven项目,数据库选择了MySQL,服务器用的是Tomcat。Eclipse功能强大,不联网也可以使用,集成了很多插件。MySQL安装简单,对电脑配置要求不高,适合个人项目的开发。Tomcat使用免费,下载安装简单,很适合轻量级别的开发。2.1开发语言2.1.1Java语言Java众所周知,是一门面向对象编程语言,它不仅吸收了C++语言的各种优点,还摒弃了C++里难以理解的多继承、指针等概念,因此Java语言具有功能强大和简单易用两个特征[7]。Java语言作为静态面向对象编程语言的代表,极好地实现了面向对象理论,允许程序员以优雅的思维方式进行复杂的编程。本项目采用的是JDK1.8的版本,已经算一个比较问稳定又不至于落后的版本。2.1.2JavaScript脚本语言JavaScript作为一种直译式的脚本语言,作用效果很广泛,比如,在网页上展示的轮播图样式和在咨询,平台上输入的内容错误后会显示的提示信息,类似这样的效果。另外针对商城网站里面购买商品时,使用购物车和费用估算也需要用到JavaScript。所以即使它不怎么明显,但依然是人们经常会使用它来进行项目的开发。如“聊天工具”和“货币图表”等,可以实时进行修改,这也是JavaScript的主要魅力之一。如果您需要进一步扩展视野,那么它还可以用来创建APP和游戏。当你使用诸如iPhone和iPad等各种移动终端时,你就会发现JavaScript之类的通用开发语言是非常有用的。2.2开发相关的工具2.2.1Eclipse开发工具本项目采用的是Eclipse在学校是很常见的编写Java代码的工具,安装简单,可以集成很多有用的插件。本项目创建的是一个Maven项目,比较好在pom.xml里进行所需JAR包的引入和管理。本人此次网站设计使用的Eclipse版本是4.6.0。Maven用到的话可以在官方网站进行下载,无需安装,但需要配置。本次项目采用Maven的是3.5.4的版本。将版本添加进Eclipse:Window–>Preferences–>Maven–>Installations–>Add–>Directory添加需要增加的本机Maven版本–>Finish–>勾选新增加的Maven版本–>ApplyandClose;配置UserSettings:Window–>Preferences–>Maven–>UserSettings–>Browser…自行选择自己所需要现在使用的settings.xml的配置文件–>Reindex前面的输入的框用来输入本地仓库的地址–>ApplyandClose替换settings文件。创建Maven项目的步骤:File–>New–>Other…–>Maven–>MavenProject–>Next>–>Next>–>选择Maven-archetype-quickstart模板–>Next>–>输入坐标–>Finish。如此便创建了一个Maven项目,从创建的过程中输入坐标值时,可以发现Package=GroupId+ArtifactId。接下来便可开始JAR包的导入等操作。2.2.2Tomcat服务器本次项目所使用Tomcat的版本为8.0.33的版本。使用之前需要去官网下载,然后再将下载的Tomcat解压到指定目录,再进行一定的配置。配置好自己的Tomcat后可以测试:http://localhost:8080/,可以访问Tomcat首页说明配置成功,报404找不到错误可能是配置问题,也可能是项目没有启动。由于此项目是Maven项目,启动方式也和一般JavaWeb项目不一样,Maven项目中pom.xml文件,可以配置run的方式。鼠标右键–>RunAs–>Mavenbuild…—>Goals:后面的输入框中输入命令=–>运行中出现此问题:Nocompilerisprovidedinthisenvironment.PerhapsyouarerunningonaJREratherthanaJDK?报这个错的原因是Maven中的settings.xml文件中的profile配置的JDK运行环境有关,Eclipse默认的是JRE运行环境。只需要在InstalledJREs中增加并勾选JDK运行环境就可以了。2.2.3SQLyog工具安装完MySQL完并且启动MySQL服务之后肯定不会直接在Windows控制台直接创建数据库和表,这时候就需要用到SQLyog,可以用此工具直接创建表和数据库,方便又简洁。2.3开发相关的技术(1)jQuery框架jQuery是一个封装完善的JavaScript框架,可以让我们的代码变得简洁,其中用的最多的是AJAX交互功能。jQuery的特点有快速获取文档元素、提供漂亮的页面动态效果、创建AJAX无刷新网页、提供对JavaScript语言的增强、增强的事件处理、更改网页内容。在页面要使用jQuery要引入相关的.js文件,版本过低会造成一些功能无法使用的问题,本项目引入的是1.11.0的版本。引入方法为<scripttype="text/javascript"src="../js/jquery-1.11.0.js"></script>。layUI前端框架layUI前台框架使用广泛,很多网站都在使用它。里面封装了许多功能,像经常采用的form表单,里面的input输入框自带lay-verify验证,验证类型包括日常使用的phone、email、number、required等,不过要想使用自动验证,要对提交按钮进行监听。也可以采用轮播图,分页,上传等技术功能。SSM框架SSM(Sping+SpringMVC+MyBatis)框架由Spring和MyBatis两个开源框架整合而成(SpringMVC是Spring中的部分内容),常作为数据源较简单的web项目的框架[5]。SpringMVC用来拦截用户请求,MyBatis作为一个持久层框架,来对数据库操作,Spring用来动态加载创建的实例。B/S架构B/S结构(Browser/Server,\t"/item/B/S%E7%BB%93%E6%9E%84/_blank"浏览器/\t"/item/B/S%E7%BB%93%E6%9E%84/_blank"服务器模式),是\t"/item/B/S%E7%BB%93%E6%9E%84/_blank"WEB兴起后的一种网络结构模式,WEB浏览器是\t"/item/B/S%E7%BB%93%E6%9E%84/_blank"客户端最主要的\t"/item/B/S%E7%BB%93%E6%9E%84/_blank"应用软件。此项目采用本架构,自己启动服务器,在浏览器里进行界面操作。这种架构的优点是成本低,可维护性高。(5)Ajax开发技术Ajax(AsynchronousJavascriptAndXML)即异步JavaScript和XML,是指一种创建交互式网页应用的网页开发技术。本技术适用于需要局部刷新的场景,例如根据类别搜索商品,使用Ajax后可以只刷新商品显示的区域而不是刷新这个页面。3系统的需求分析和概要设计3.1可行性分析可行性分析能使新系统达到以最小的成本取得最大的利益,目的也是根据开发管理系统的需求,通过初步调查和系统目标分析,对于本二手校园交易系统网站的设计从技术、经济、管理上进行可行的分析研究,既保证资源的合理有效的利用,也可以避免在日常的工作中由于失误而导致的各种浪费的现象。系统分析一般分为对技术方面、经济方面、管理方面这三项来进行具体的可行性分析。对软件中可能遇到的一些问题及解决方案进行初步的设定,明确目标。3.1.1技术可行性本系统的开发工具使用的是Eclipse,MySQL数据库是一种很好的选择,开发语言理所当然地使用Java和JavaScript,这两者Java是我熟悉的语言,而JavaScript使用简单,很适合开发网页项目。3.1.2经济可行性本系统的复杂度较小,不需要投入大量资金,同时也存在着实用性,能改善使用方法在财力和人力上的过度消耗。如果进行使用就可以得到很好的成效,做到合理的利用可用资源和合理的节约不仅仅提高了工作的效率也减少了工作人员的工作量,使得本系统在处理业务方面得到很大方面的提升。3.1.3管理可行性对于大多数的用户来说,网上购物已经是一种习惯了。相对于其他的购物方式此种购物方式更加的熟悉。一个界面简洁友好的网站可以使使用者更加轻松的了解到此网站所提供的种种操作,使使用者能得到不错的购物体验。本系统管理员也可以进行登录,在网页上直接进行用户管理、评论管理、商品管理、公告管理等等功能,操作不复杂,简单容易上手,不用花费时间去另外学习操作管理。结合以上所说的几点,开发校园二手商品交易淘网站是必要并且可以准备开发。3.2系统的需求分析开发软件的需求分析是系统开发设计的第一步,而且需求分析的重要性很强。需求分析的工作质量,不仅影响着后续开发软件时的工作的质量。而且还决定着开发出软件的价值。需求分析,深入的分析用户的需求,把用户需求用数学方法统计出来.需求分析是从市场调查,用户评价,到肯定用户需求该产品的过程。在这个过程中,对用户的想法,不断地揭示和判断的过程。3.2.1系统功能需求用户是主要的操作人员,如以下图3-1所示的用户用例图,能很好的阐述用户所具有的的功能,根据用户的用例图来详细设计各项功能。图3-1用户用例图系统总共分为用户、商品、订单、评论、收藏、公告、反馈这几个模块,分别在数据库里设计七个表。用户分为两种管理员和普通用户,管理员只能通过内数据库直接添加,外方不可通过注册获得管理员身份,管理员可以登录后台管理商品和订单以及评论。有登录和未登录状态,有不同权限,普通用户只能查看浏览搜索商品,查看详情和评论而无法发布商品,已登录的用户可以发布商品,对商品进行搜索,添加评论,购买商品等。商品有2种状态,一种是刚发布的商品,会在商品界面展示,一种是交易成功,会从商品展示页面删除。订单是已登录的用户发出购买请求而生成,一旦订单生成不可更改,买家可以查看订单和删除订单。已登录用户可以查看评论和发表评论,也可以删除已发布的评论,未登录只能查看评论。已登录用户还可以对整个二手网站进行反馈和对某些用户的不法行为进行投诉。简要来说,本网站可以使卖家方便出售其需要出售的物品和提供自己的联系方式,用户可以选择交易的物品自由进行交易,生成订单记录。这个系统还提供后台管理,方便管理员对系统进行维护。3.2.2用户模块功能需求分析对于许多电子商务网站来说,用户管理功能是必要的,这个模块保证了只有注册的会员才能够有权限进行相关操作。该系统中,注册会员需要输入该会员的账号和密码以及验证码信息,防止了一些不法人员对于系统的恶意操作。保证了系统的稳定性,和安全性。具体分析如下:(1)所有用户都可以浏览商品,也可以查看商品详情,没有进行注册的浏览者无法拥有其它权限;(2)游客可以注册成为高贵的会员,拥有登录和上传商品以及购买商品的的功能,还可以在交流区进行交流,所能注册的会员,均为普通权限会员;(3)管理员的权限是无法通过注册来获得的,只能高级管理员在数据库内部添加。3.2.3商品模块功能需求分析商品是电子商务的灵魂,因此,一个直观而又简洁的商品展示的模块,在校园二手交易系统中是非常重要的。商品的展示,要保证在稳定而又安全的前提下,给浏览者提供方便,而又简单的信息。商品展示的界面要做的美观大方。对于后台管理人员,能够方便其维护和管理。具体功分析如下:商品信息是面向所有浏览者的,无论是已登录还是连注册都没有进行的使用者,都要能保证其看到网站淘一淘首页所展示的商品信息;所有用户都可以通过点击不同的商品类别,来查看不同商品的分类(3)所有访问本网站的用户都可以通过关键字查询商品信息;(4)商品的详细信息中,必须记录其商品的大图,以及其全部的详细资料,方便浏览者对商品的了解;(5)商品的详细信息中,必须有跳转购买的链接。3.2.3公告模块功能需求分析公告功能可以为客户提供最新的资讯,服务咨询,以及网站活动等内容。是能提升网站的业绩的重要途径,具体功分析能如下:(1)所有浏览者都可以看到公告内容;(2)公告信息必须保证其真实性,必须要对管理人员进行监督。因为管理人员,有最高权限,包括对公告的添修改、删除。除此之外,还可以在公告里引进广告来也保证网站的利益。3.2.4评论模块功能需求分析虽然商品详情里有卖家的联系方式,不过为了增加商品的人气和多样性,还是需要设计此功能。顾客可以在此进行简单的在线交流,给网站带来流量和人气,也可以实时看出用户对商品的其它需求和对某种商品的偏好。具体分析如下:(1)所有注册并且登陆的会员,都可以进行在商品详情里对商品进行评论;(2)自己的评论只有自己有删除的权限;(3)商品评论所有访问本二手交易校园淘网站的用户都可以查看。3.2.5订单模块功能需求分析订单的存在为了记录买家的购买记录,查看自己购买的商品。具体分析如下:订单只有已经登录的用户才能购买商品并自动生成订单记录,并且可以查看所有购买记录;订单记录可以被买家自己删除;一件商品只能被购买一次;下订单前会有个类似公告的提示信息,防止用户手滑买错。3.2.6收藏模块功能需求分析顾客在挑选商品时会犹豫,这时候就需要收藏功能来解决记录想要购买的商品,等决定好再去下订单或者决定不买取消收藏,对用户挑选商品非常方便,是一项实用的功能。具体分析如下:在商品详情里可以看见收藏按钮,没登录用户点击会提示请先登录,已登录用户点击直接收藏成功;用户自己可以删除收藏;用户可以从商品图片链接进入商品详情进行其它操作。3.2.7反馈模块功能需求分析顾客是整个系统中的主导,系统运行的质量,服务的效率,直接来自于顾客的反馈。针对顾客的反馈,和留言推荐。可以更好的管理和维护校园二手交易网站。具体分析如下:只有已经登录的用户才可以提交反馈。3.2.8管理员模块功能需求分析管理员可以进行系统管理,这个模块只有管理者才有权限进入和操作,管理员用例图如图3-2所示。避免一些非法人员的恶意操作,保证了二手校园淘网站的安全性以及稳定性,管理人员通过输入账号密码登陆,进行一切的管理工作。后台登陆模块需求分析如下:(1)管理人员登陆后台需要像普通用户一样输入正确的账号和密码以及验证码;(2)管理员可以查看所有商品,编辑商品状态,删除商品;(3)管理员可以查看所有评论,删除不合适的评论;(4)管理员可以查看所有用户信息,删除用户;(5)管理员可以查看所有公告信息,编辑公告;(6)管理员可以查看所有反馈信息。图3-2管理员用例图3.3系统的概要设计3.3.1功能模块图系统的功能模块图如图3-3所示,展示了普通用户和管理员具有的不同的功能。校园二手校园二手淘网站普通用户管理员注册登录提交反馈发布商品管理商品个人信息管理发表和删除评论生成和删除订单生成和删除收藏用户管理商品信息管理评论管理公告咨讯管理发布商品注册登录反馈管理图3-3系统模块功能图3.3.2数据变化流程用户添加信息时,编号字段的信息是由系统自动生成的,而且用户不能修改。除此之外,其他信息由用户自己编辑输入,在此之后系统对数据通过合法判断,如果数据合法,合法数据被保存至数据库,不合法则系统提示用户重新输入数据。在修改信息时,首先选中一条准备更改的信息,然后输入需要更改的数据,系统判断合法性.如果判断其合法,则保存至数据库,如果判断其不合法,则重新输入数据。当用户选定一条需要删除的信息的时候,单击删除按钮,系统会提示使用者是否确定其操作,用户点取消,取消其操作,点确定删除其在数据库中的相应的内容。用户总体操作数据库就这三种,数据变化流程图如图3-4所示。图3-4数据变化流程图3.2.3用户登录注册流程(1)用户登录用户未登录时,导航栏只有登录注册选项,能实现的功能也只有查看所有商品信息和查看所有评论,不能对其进行任何影响数据库的操作。用户在登录界面输入用户名和密码用户点击登录用户登录流程图如图3-5所示。启动项目进入首页,当你发现自己想要购买商品或者想要发表评论时系统提醒你要先进行登录。点击登录后就跳转到登录界面,要求你输入用户名、密码和由图片生生的随机验证码,如果没有账号就去进行注册,有账号就可以直接登录。登录首先会检测你输入的验证码是否正确,不正确就重新再输入正确的数据,接着检测密码和用户名是否匹配。图3-5用户登录流程(2)用户注册用户未登录时,导航栏只有登录注册选项,能实现的功能也只有查看所有商品信息和查看所有评论,不能对其进行任何影响数据库的操作。用户在注册界面输入用户名和密码以及联系方式等个人信息,用户点击注册,向前后台发送请求,后台进行数据验证以及唯一性检测,通过则跳转到登录界面进行登录,数据验证失败则要求重新输入数据。用户注册流程图如图3-6所示。图3-6用户注册流程4系统的数据库设计4.1实体图(1)用户实体图用户属性包含,用户的ID、用户的名称、用户的年龄、用户的性别,用户的邮箱,用户是手机号、用户的密码、用户的图片、用户的注册时间、用户的是否是管理员。用户实体图如图4-1所示。图4-1用户实体图(2)商品实体图商品属性包含,商品ID,商品名称,商品类型,商品价格,商品要价方式,商品浏览次数、商品状态、用户ID、商品发布时间、商品新旧程度、商品图片、交易地点。商品实体图如图4-2所示。图4-2商品实体图(3)商品评论实体图商品评论属性包括,评价ID、用户ID、商品ID、评价的内容、评价时间。商品评论实体图如图4-3所示。图4-3评论实体图(4)商品订单实体图商品订单属性包括,订单ID、订单生成时间、商品ID、买家ID。商品订单实体图如图4-4所示。图4-4订单实体图(5)商品收藏实体图商品收藏属性包括,收藏ID、商品ID、买家ID、收藏时间。商品收藏实体图如图4-5所示。图4-5收藏实体图(6)公告咨讯实体图公告咨讯属性包括,公告ID、公告图片、公告生成时间。公告实体图如图4-6所示。图4-6公告实体图反馈投诉实体图反馈投诉属性包括反馈ID,用户ID,反馈内容,反馈提交时间。反馈实体图如图4-7所示。图4-7反馈实体图4.2数据的概念结构数据库的概念结构设计采用实体—联系(E-R)模型设计方法。E-R解释为EntityRelationshipDiagram,其中的组成元素有三种,实体、属性与联系。其中实体用一个矩形来代表,属性用椭圆来代表,实体和实体之间的关系用菱形表示。E-R图可以帮助开发人员进行数据库设计,本系统的整体E-R图如图4-8所示,表示了各个实体之间的联系。用户和商品是一对多关系,用户可以作为卖家发布商品,用户也可以作为买家购买商品,拥有两种身份的用户不冲突。一个用户可以买多个商品,一个商品只能被一个用户买,所以两者之间是多对一关系。用户和反馈之间也是一对多关系,一个用户可以提交多条反馈,一条反馈信息只能被一个用户提交。用户和收藏之间也是一对多关系,一个用户可以有多个收藏,但某个具体的收藏只会属于一个用户。用户和评论之间也是一对多关系,一个用户可以无限制发多条评论,一条评论只会属于一个用户。图4-8系统整体E-R图4.3数据表的设计4.3.1MySQL简介MySQL是一个关系型数据库管理系统,由瑞典MySQLAB公司开发,目前属于Oracle旗下产品[4]。MySQL是最流行的关系型数据库管理系统之一,在WEB应用方面,MySQL是最好的RDBMS(RelationalDatabaseManagementSystem,关系数据库管理系统)应用软件。本项目采用的数据库是MySQL5.6.42的版本。4.3.2数据表结构用户表:即shop_user,如表4-1所示,字段包括用户的ID、用户的名称、用户的年龄、用户的性别,用户的邮箱,用户是手机号、用户的密码、用户的图片、用户的注册时间、用户的是否是管理员这些字段,表的字段等如表4-1所示。userId:用户ID用户的主键,不可为空,数据类型为int,自动增长,长度就为数据库里默认的11。userName:用户名称,不可为空,数据类型为varchar,长度为40。password:用户登录密码,不可为空,数据类型为varchar,长度为255。sex:用户性别,可以为空,数据类型为int,长度为默认的11,1代表男生,0代表女生。age:用户年龄,可以为空,数据类型为int,长度为默认的11。phone:用户电话,不可为空,数据类型为varchar,长度为40。email:用户邮箱,不可为空,数据类型为varchar,长度为40。userimg:用户图片路径,可以为空,数据类型为varchar,长度为255,有默认值。startTime:用户注册时间,不可为空,数据类型为datetime。isAdmin:用户权限是管理员还是普通用户,不可为空,数据类型为int,长度为默认的11,0代表普通用户,1代表管理员,默认为0。表4-1用户表列名数据类型长度允许空是否主键说明userIdint11否是用户IDuserNamevarchar40否否用户名passwordvarchar255否否密码sexint11是否性别ageint11是否年龄phonevarchar40否否电话emailvarchar40否否邮箱isAdminint11是否是否管理员startTimedatetime否否注册时间userimgvarchar255是否图片路径(2)商品表:即shop_goods,字段包括商品ID,商品名称,商品类型,商品价格,商品要价方式,商品浏览次数、商品状态、用户ID、商品发布时间、商品新旧程度、商品图片、交易地点,如表4-2所示。goodsId:商品ID为商品的主键,不可为空,数据类型为int,自动增长,长度为默认的11。goodsName:商品名称,不可为空,数据类型为varchar,长度为40。goodsType:商品类型,不可为空,数据类型为varchar,长度为40。goodsDescription:商品描述,可以为空,数据类型为varchar,长度为255。goodsNew:商品新旧度,可以为空,数据类型为int,长度为默认的11。goodsWay:商品要价方式,可以为空,数据类型为int,长度为默认的11,1代表一口价不还价,0代表可还价。goodsState:商品状态,不可为空,数据类型为int,长度为默认的11,1代表商品已经卖出,0代表商品正还在热卖中没有卖出,默认为0。goodsImg:商品显示图片路径,不可为空,数据类型为varchar,长度为255。goodsAddress:商品交易地点,可以为空,数据类型为varchar,长度为255。goodsPrice:商品价格,不可为空,数据类型为decimal。goodsTime:商品发布时间,不可为空,数据类型为datetime。userId:卖家ID,不可为空,数据类型为int,自动增长,长度为默认的11。表4-2商品表列名数据类型长度允许空是否主键说明goodsIdint11否是商品IDgoodsNamevarchar40否否商品名goodsDescriptionvarchar255是否描述goodsNewint11是否新旧goodsWayint11是否否管理员goodsTimedatetime是否发布时间goodsImgvarchar255否否图片路径goodsState int11是否商品状态goodsPricedecimal10,2否否商品价格goodsAddressvarchar255是否交易地址goodsTypevarchar55否否商品类型userIdint11否否发布人ID(3)评论表:即shop_commment,字段包括评价ID、用户ID、商品ID、评价的内容、评价时间,如表4-3所示。cid:评论ID为评论表的主键,不可为空,数据类型为int,自动增长,长度为默认的11。comment:评论内容,不可为空,数据类型为varchar,长度为255。ctime:评论提交时间,不可为空,数据类型为datetime。userId:用户ID,不可为空,数据类型为int,长度为默认的11。goodsId:商品ID,不可为空,数据类型为int,长度为默认的11。表4-3评论表列名数据类型长度允许空是否主键说明cidint11否是用户IDccommentvarchar255否否评论内容ctimedatetime否否评论时间userIdint11否否用户IDgoodsIdint11否否商品ID(4)订单表:即shop_order,字段包括订单ID、订单生成时间、商品ID、买家ID如表4-4所示。oid:订单ID为订单表的主键,不可为空,数据类型为int,自动增长,长度为默认的11。otime:订单生成时间,不可为空,数据类型为datetime。userId:用户ID,不可为空,数据类型为int,长度为默认的11。goodsId:商品ID,不可为空,数据类型为int,长度为默认的11。表4-4订单表列名数据类型长度允许空是否主键说明oidint11否是用户IDotimedatetime否否下单时间buserIdint11否否买家IDgoodsIdint11否否商品ID(5)收藏表:即shop_save,字段包括收藏ID、商品ID、买家ID、收藏时间如表4-5所示。sid:收藏ID为收藏表主键,不可为空,数据类型为int,自动增长,长度为11。stime:收藏时间,不可为空,数据类型为datetime。buserId:用户ID,不可为空,数据类型为int,长度为默认的11。goodsId:商品ID,不可为空,数据类型为int,长度为默认的11。表4-5收藏表列名数据类型长度允许空是否主键说明sidint11否是用户IDstimedatetime255否否收藏时间buserIdint11否否买家IDgoodsIdint11否否商品ID(6)公告咨讯表:即shop_img,字段包括公告ID、公告图片、公告生成时间如表4-6所示。imgId:公告ID为订单表的主键,不可为空,数据类型为int,自动增长,长度为默认的11。ingName:公告图片路径,数据类型varchar,长度为255,不可为空。otime:公告生成时间,不可为空,数据类型为datetime。表4-6公告咨讯表列名数据类型长度允许空是否主键说明imgIdint11否是收藏IDimgNamevarchar255否否图片路径imgTimedatetime否否收藏时间(7)反馈投诉表:即shop_back,字段包括反馈ID、反馈内容、反馈提交时间如表4-7所示。bid:反馈ID为订单表的主键,不可为空,数据类型为int,自动增长,长度为默认的11。bcoment:反馈内容,显示给普通用户看,数据类型varchar,长度为255,不可为空。btime:反馈提交时间,不可为空,数据类型为datetime。userId:用户ID,不可为空,数据类型为int,长度为默认的11。表4-7公告咨讯表列名数据类型长度允许空是否主键说明bidint11否是反馈IDbcomentvarchar255否否反馈内容brimedatetime否否反馈时间userIdint11否否用户ID4.4数据库的连接原理JDBC(JavaDataBaseConnectivity)即Java数据库连接,是Java与数据库的连接,通过JDBDAPI类库中的类来自动装载驱动程序。一般包括与数据库建立连接、传送查询和接收查询结果。此项目与MySQL数据库进行连接,连接池采用的c3p0这个开源的连接池。连接首先加载驱动,本项目加载的是com.mysql.jdbc.Driver,url的值是jdbc:mysql://localhost:3306/shop,用户名为root,密码为空。5界面代码设计5.1前台用户模块实现5.1.1前台用户注册用户进入此模块,页面后可以进行注册账号,注册有两种方式可选择,充分照顾了想节省时间的心思。一种是快速注册,如图5-1所示,一种是详细注册,如图5-2所示。快速注册只用输入用户名、密码、重复密码、手机号、邮箱,这5项都为必填项。手机号和邮箱都需按规则来填写,否则会提示数据错误请重新输入,密码长度设定为6到12位,输入长度过长或过短都会发出输入长度不正确的提示。其中密码要输两次,后台会获取两者的值来进行是否一致的判断。点击注册按钮会向后台发送数据,后台会对用户名和电话邮箱这三个数据进行唯一性检测,如果数据库已存在的用户名和用户刚输入的用户名相同,则会返回一个用户名已经存在的信息,同理电话和邮箱存在也会返回提示信息。详细注册在快速注册上新增了用户年年龄,用户性别和添加图片这3项需要填的数据。用户年龄做了数字校验,只能填入数字,输入其它会提示请输入正确的数据,很好的保证了数据的完整性。用户性别用的是单选按钮,保证数据最终传输的是1或者0,减少了数据的维护量。用户上传图片这项功能充分满足了大众的眼球,通过头像就可以体现出一个人的兴趣爱好。图5-1用户快速注册图5-2用户详细注册5.1.2前台用户登录用户进入此模块,页面后可以进行登录操作,如果有账号可以直接进行登录,如果没有账号可以点击注册按钮跳转到注册界面,如图5-3所示。登录必须输入用户名,密码,验证码这三个字段,用户名和密码是一般网站的必填项,这里增加了一个验证码的功能,增加了安全性,防止机器恶意注册。验证码是从后台生成,点击验证码可以进行验证码刷新。密码位数在6到12位,输入长度不正确则不会发送登录的请求。验证码会首先在后台进行校验,如果不对会返回验证码输入错误的提示信息,正确则继续校验用户名,用户名如果不存在会提示用户名不存在的提示信息,用户名存在则继续进行用户名和密码的是否匹配的校验。校验成功则登录成功,用户进入登录后的界面,可以进行其他操作。图5-3用户登录5.1.3用户找回用户名用户进入此模块,进入登录页面后点击找回两字可以进行找回用户名操作。点击找回会触发一个绑定事件,弹出一个弹出层,如图5-4所示。用户可以输入电话号码和密码来进行找回,因为电话号码的唯一性,可以确保找回用户名的唯一性,加上密码的输入不仅能提高数据的安全性,还能防止人为的恶意进行重复找回密码的操作。图5-4用户找回用户名5.1.4用户密码重置用户进入此模块,进入登录页面后点击重置两字可以进行操重置密码操作。点击找重置会触发一个绑定事件,弹出一个弹出层,如图5-5所示。用户输入真实有效的11位手机号,点击获取按钮,手机会收到一条验证码消息,如图5-6所示。收到后在输入框输入收到的六位数字验证码,再输入必须填的6-12位字符密码。为了加强用户对密码的记忆这里要求密码输两遍,一致才能开始将数据都传到后台。图5-5用户重置密码图5-6用户收到验证码5.1.5用户个人中心只有已经登录的用户才能进入此界面,用户的个人中心包括两方面,一种是用户在线修改密码,如图5-7所示,还有一种是不修改密码只修改其它个人资料,如图5-8所示。修改个人资料页面用户一进入此界面就会看到自己个人信息的展示,包括用户ID,用户名,年龄,性别,电话,邮箱,个人头像,其中用户ID是只能看不可修改状态,其它都可以编辑修改,修改一定的数据后点击确认按钮会向后台发送修改的请求,后台会先验证用户名和电话邮箱的唯一性,如果已经有人注册过就提示修改不成功,如果还没有人使用,输入的数据是唯一的就提示修改成功。修改密码,前面介绍过一种,根据手机号验证码来修改,这一种是在线修改,只需要提供新旧密码即可。用户会根据用户的专属ID和旧密码的匹配性来确定是不是要修改密码。图5-7用户在线修改密码图5-8用户修改个人资料5.2商品模块功能实现5.2.1商品浏览搜索进入二手网站首页淘一淘如图5-9所示,商品排列整齐,显示商品图片商品名称和商品要价方式,商品价格被标红提醒浏览者注意。对商品还进行了分页,点击下一页可以加载另一页的商品。商品可以按类别搜索显示,点击不同的类别就出现不同的种类的商品,例如点击一下数码电器的tab选项,就会重新加载商品页面,效果如图5-10所示。要实现这个功能要提前对商品分好类,商品发布时只能添加已有的类别。商品还有按关键字搜索的功能,这里设置的关键字是商品名,输入商品名就可以找包含关键字的商品。例如输入电脑进行搜索,出现如图5-11所示的界面,显示出商品名称带有电脑的商品。图5-9淘一淘首页图5-10按类别搜索图5-11按关键字搜索5.2.2商品详情商品详情界面详细的介绍了商品各种信息和卖家的联系方式,也可以看到评论,如图5-12所示。未登录用户也可以看到商品详情里的内容但不能发表购买和收藏,点击购买按钮会提示请先登录的提示信息。用户每进入一次商品详情就会增加一次浏览次数。图5-11商品详情5.2.3商品发布已经登录的用户才可以进行商品发布,商品发布,商品发布需要填写的内容如图5-12所示。商品名称是必填项,商品类别可以进行下拉框选择,商品价格只能输入数字,新旧程度也是输入数字来代表几成新,至于要加方式是在一口价和可还价之间选一个,交易地址可填可不填,描述也是可以写或者不写,图片为一个必填项,因为没有图片其它用户无法判断商品的实际样子。图5-12商品发布5.2.4商品管理用户可登录后以对商品进行管理,用户可以查看和修改正在发布的商品,点击发布商品的图片可以跳转到相应的商品详情,如图5-13所示。用户还可以查看已经卖出的商品,也可以删除卖出记录,卖出记录是不能再被编辑的,所以没有编辑功能,如图5-14所示。图5-13正在发布的商品列表图5-14已经卖商品记录列表5.3评论模块功能实现在进入此界面后,所有用户都可以查看其它包括自己已经发表的言论,已登录用户在商品详情界面可以进行评论,未登录的用户只能查看评论,评论也可以被发表该评论的用户删除,如图5-15所示。图5-15用户的评论5.4收藏模块功能实现已登录用户在商品详情界面点击收藏按钮,确认收藏后就添加收藏成功,用户可以查看和删除收藏,如图5-16所示,未登录用户点击收藏按钮会提示请先登录信息。图5-16收藏记录列表5.5订单模块功能实现用户在商品详情界面点击购买按钮,确认购买后就生成订单,用户可以查看和删除订单,如图5-17所示。.图5-17订单记录列表5.6反馈模块功能实现用户对网站有什么意见和想投诉其它用户都可以对管理员反馈,用户反馈界面如图5-18所示,管理员可以收到用户的反馈信息并进行处理。图5-18用户反馈5.7公告模块功能实现本网站的公告以图片的形式显示,在商品显示最上方以轮播图的方式显示,如图5-19所示。公告显示本网站的基础信息和一些广告,一些重要活动也以公告形式进行展现。图5-19轮播公告5.8管理员模块功能实现管理和普通用户都一样输入密码和用户名进行登录操作,但管理员登录界面的导航栏和普通用户不一样,如图5-20是普通用户登录后显示的导航栏,如图5-21是管理员登录后显示导航栏。管理员权限登录后界面如图所示,普通用户登录后界面如图所示。管理员拥有的权限比普通用户多,管理员管理公告咨讯,包括查看和编辑公告信息,如图5-22所示,还能管理所有用户已经发表的评论,如图5-23所示,管理员管理普通用户如图5-24所示,管理员管理所有二手商品信息如图5-25所示。图5-20普通用户登录导航栏图5-21管理员登录导航栏图5-22管理员管理公告图5-23管理员管理用户所有评论图5-24管理员管理所有普通用户图5-25管理员管理所有商品6系统调试与测试一个完整的项目,除了开发功是必要的,测试这一块也不能少。很多时候测试用到时间比开发周期更长,足以可见测试的重要性。测试不需要你有很高超的设计代码的水平,只需要你耐心和细心,测试时,把自己当做真正的使用者,一点一点输入数据,考虑各种情况,记录各种结果。如果一个项目没有经过测试就开始发布,当使用者找到bug时就会觉得用户体验感很差,而且黑客还可以借用bug来攻击你的系统,使程序崩溃。肉眼可见的错误很好发现,隐藏的需要输入数据才会产生的错误就很难发现,本项目的测试主要包括数据的唯一性和数据输入类型的检测。6.1测试用例(1)登录注册模块测试用例及测试结果如表6-1所示。表6-1登录注册模块测试结果序号测试用例及测试过程测试结果01登录测试:(已知正确账号/密码为apple/123456)输入账号:apple2输入密码:123456验证码:输入正确登录失败,返回提示信息用户名不存在02登录测试:(已知正确账号/密码为apple/123456)输入账号:apple输入密码:123457验证码:输入正确登录失败,返回提示信息密码错误03登录测试:(已知正确账号/密码为apple/123456)输入账号:apple输入密码:123456验证码:根据图片输入错误的验证码登录失败,返回提示信息错误04登录测试:(已知正确账号/密码为apple/123456)输入账号:apple输入密码:123456验证码:输入正确登录成功跳转到首页05注册测试:(已知账号apple已被注册,手机箱1234@已经被注册)输入账号:apple输入密码:12345678确认密码:1234567手机号箱:1234@注册失败,提示两次密码输入不一致06注册测试:(已知账号apple已被注册,手机箱1234@已经被注册)输入账号:apple输入密码:1234567确认密码:1234567手机号箱:1234@注册失败,提示用户名已存在07注册测试:(已知账号apple已被注册,手机箱1234@已经被注册my1234@没被注册)输入账号:myapple输入密码:1234567确认密码:1234567手机号箱:1234@注册失败,提示邮箱已存在08注册测试:(已知账号apple已被注册,手机箱1234@已经被注册my1234@没被注册)输入账号:apple输入密码:1234567确认密码:1234567手机号箱:my1234@注册失败,提示手机号已存在09注册测试:(已知账号apple已被注册,手机箱1234@已经被注册my1234@没被注册)输入账号:apple2输入密码:1234567确认密码:1234567手机号箱:my1234@注册成功,跳转到登录界面(2)商品发布模块测试用例及
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 病理中级考试试题及答案
- 2026三年级数学下册 全年的天数
- 公共场所从业人员健康检查培训制度
- 2026六年级数学上册 数对的含义
- 体育馆空调使用制度
- 油漆工安全试题及答案
- 人员进退场审查制度
- 九牧绩效发放制度
- 班级加分扣分奖惩制度
- 销售个人pk奖惩制度
- 2026年安徽城市管理职业学院单招职业适应性测试题库附参考答案详解(能力提升)
- 第2课 让我们的家更美好 第二课时(课件)2025-2026学年《道德与法治》五年级下册
- 未来五年新形势下击剑器材及零件行业顺势崛起战略制定与实施分析研究报告
- GB/T 29285-2012纸浆实验室湿解离机械浆解离
- GB/T 25052-2010连续热浸镀层钢板和钢带尺寸、外形、重量及允许偏差
- GB/T 24743-2009技术产品文件钢铁零件热处理表示法
- 自然辩证法概论(新)
- 第二章-园艺设施结构设计
- 10.1五年级下册道德与法治(课件)第10课《夺取抗日战争和人民解放战争的胜利》第一课时
- 工作危害分析表(光伏施工工程)
- 联通主义:从学习理论到“互联网+教育”的本体论
评论
0/150
提交评论