版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
页引言在人们的日常生活中,处处都可以看见的是电子商务的崛起,快递堆积如山,传统的商业模式也逐渐被取代,网上购物这一理念也逐渐被大家所接受,人们生活水平的持续提高,同时也加快了许多物品例如电子产品等的更新的速度,这样就会让大量物品的处于一个闲置的状态。为了更好的解决这些问题,不受时间空间的限制,本系统以此需求为基础,通过注册成功然后登录的用户将自己闲置的物品发布到淘品旧物交易的网站上,其余用户对商品进行浏览,有意者进行交易的方式对闲置物品进行一个更好的处理。这不仅可以让用户变闲为现,同时为用户提供一个以较低廉价格获得物品的一个途径。本系统采用Eclipse为运行平台,运用JSP技术、MySql数据库、JSP与后台数据库连接等技术搭建而成。实现淘品旧物交易系统的用户在线登录与注册、用户发布旧物商品的信息、浏览旧物商品信息、修改个人密码、信息检索、留言咨询、管理员管理后台等。该系统的用户界面简单快捷易懂,用户操作起来也十分方便,不存在复杂的用户教学。该系统可以有效解决闲置物品的循环使用的问题,也促进了节约型社会的建设。第1章绪论1.1课题背景1999年是我国的电子商务元年,之后,电子商务在我国发展十分的迅速,各个地方逐渐被普及,随后就成为人们生活中的主要组成部分,丰富的旧物交易系统也随着电子商务的火速发展而诞生。由于大量的闲置旧物商品造成的资源浪费,目前我国的旧物交易已进入全方位的、多层次的推进的新阶段,像58同城、赶集、闲鱼等,这些平台为百姓之间进行旧物交易提供平台,为买卖双方提供极大的便利,使得物品循环利用,达到资源的充分利用。旧物交易系统中的卖家和买家都是个人,属于C2C模式,交易自由、平等,不受时间空间的约束。1.2课题的价值和意义随着人们的生活水平的不断提高,同时也提高了人们对于美好物质生活的追求的要求,由此以来,导致了大量物品的闲置。参考某平台的用户调研报告数据,随着网购的诞生及崛起,闲置的物品也随着增长,大多数人并不知道改如何去处理闲置物品,可能放置在一旁也可能将其丢掉,这些行为都造成了一定资源的浪费。这一局面的产生是因为在生活中大家没有闲心和精力也没有平台去合理的处置这些旧物。本课题为了解决这一物品闲置的问题,设计了一个淘品旧物交易系统的网站,为大家提供一个变闲为现的机会,也同时为大家提供一个以较低廉价格获得物品的一个途径,极大的方便了大家的生活,体现了21世纪时代的优越感,同时物品的循环利用也响应了低碳的号召。1.3课题的国内外研究现状网络和网络技术的快速发展,给许多行业都带来了巨大的商机,人们已经逐渐意识了这其中的商业价值,传统的商业模式也逐渐被取代,电子商务进行得如火如荼,国内外均出现了许多的大型购物网站,并且拥有较为完善的配套技术,每年的无法估计的交易额流入平台。在欧美国家当中,电子商务发展比较迅速的是美国,它在电子商务的技术和市场效应方面均处于抢先的位置,据统计,美国商务总额中近三成来自电子商务,美国在线、雅虎等电子商务公司从1995年前后开始盈利,5年后营业额近8亿美元,同时,亚马逊、沃尔玛等都获得不可思议的巨额利润。随着电子商务在国外的飞速发展,加之二手商品交易的极大需求,美国亚马逊、eBay等电商巨头引入二手交易网易服务。Craiglist是一个有名的旧物交易系统,但也包括人才招聘、买房租房等功能,它在美国发展较好,形如我国的58同城应用。邮件列表(MailingList)也有着二手商品交易的功能,用户可以在应用中发布二手商品交易帖子、评论帖子。交友等等,类似于我国的百度贴吧。1.4课题的难点、重点、核心问题及方向通过对经济可行性、技术可行性、操作可行性进行一系列的细致定量分析,可以得出淘品旧物交易系统平台是可以实现的。学习MySql数据库的查询、插入、删除等操作、SQL语句的实现以及数据库与前台连接的方法,学习JSP技术实现动态前端页面。还有系统安全性的保证,采用的是用户名和用户密码在数据库中验证配对的方式进行验证登录,能达到较为安全的地步。课题的核心问题主要是与数据库的交互,用户登录、注册、发布信息、修改个人密码等都需要与MySql数据库进行交互,这里采用一个NavicatforMySql来对数据库进行管理,利用该软件连接到数据库,方便对数据库进行一系列的操作。以Eclipse为运行平台,运用JSP技术、MySql数据库、JSP与后台数据库链接等技术以实现一个类似网上购物的旧物交易系统。第2章相关开发技术和手段2.1JSP技术Javaserverpage(java服务器端页面技术),简单来说就是将java、HTML、sql结合起来形成一种动态网页的技术,使用JSP标签在网页Html中插入Java代码,实现了Html语法中的java扩展,通常以<%开头,以%>结尾的形式。运行JSP开发的web应用,返回的值是一个html网页,有浏览器就能浏览。JSP可以通过网页的form表单来获取用户输入的数据、通过连接数据库后访问数据库,动态的创建网页。JSP将网页逻辑与网页设计的显示分离,支持可重用的基于组件的设计,使基于Web的应用程序的开发变得迅速和容易。2.2JDBCJDBC(JavaDataBaseConnectivity,java数据库连接)是一种用于执行SQL语句的JavaAPI(ApplicationProgrammingInterface,应用程序设计接口),可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成。JDBC提供了一种基准,据此可以构建更高级的工具和接口,使数据库开发人员能够编写数据库应用程序,JDBC实现了所有这些面向标准的目标并且具有简单,严格类型定义且高性能实现的接口。JDBCDriver(javadatabaseconnectivityDriver)java数据库连接驱动程序是对JDBC规范完整的实现,它的存在在JAVA程序与数据库系统之间建立了一条通信的渠道。2.3MySql数据库MySQL是最流行的一个关系型数据库管理系统,关系数据库将数据保存在不同的表中,增加了访问的速度并且提高了灵活性。MySql的优点有体积小、速度快、总体拥有成本低、开放源码,这是它成为网站开发人员的首选之一的原因。2.4TomcatTomcat服务器是一个开源的轻量级web应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP程序的首选。Tomcat中的组件Connector将在指定的端口上监听客户请求,创建一个Request和Response对象用来与请求交换数据,然后产生一个线程来处理这个请求。Tomcat中的组件session可以用来记录当前用户的信息,方便之后的调用。2.5NavicatforMySqlNavicatforMySQL是一套管理和开发MySQL或MariaDB的理想解决方案,支持单一程序,可同时连接到MySQL和MariaDB。这个功能齐备的前端软件为数据库管理、开发和维护提供了直观而强大的图形界面,给MySQL或MariaDB新手以及专业人士提供了一组全面的工具。本系统的NavicatforMySql版本为15.0.12。2.6MVC模式MVC的含义为:Model(模型)表示应用程序核心、View(视图)显示数据、Controller(控制器)处理输入,具体如下。M,是核心的"数据层"(Model),也就是程序需要操作的数据或信息。V,是直接面向最终用户的"视图层"(View)。它是提供给用户的操作界面,是程序的外壳。C,就是"控制层"(Controller),它负责根据用户从"视图层"输入的指令,选取"数据层"中的数据,然后对其进行相应的操作,产生最终结果。MVC分层同时也简化了分组开发。不同的开发人员可同时开发视图、控制器逻辑和业务逻辑。2.7JDK开发工具包JDK(javadevelopmentkit)java开发工具。程序开发者需要安装JDK开发工具包来进行编译和调试所开发的程序。JDK是整个java的核心部分,它初了包括完整的jre,还包含了运行的环境和其他的java工具箱。本系统的JDK版本为10.0.2。第3章系统分析3.1可行性分析为什么要进行可行性分析?可行性分析对于软件系统的开发来说是十分重要的,它决定了该系统是否能够在尽可能短的时间内以尽可能低的代价得到一个尽可能完美的解决问题的方法。它压缩简化了系统分析和设计的过程,也就是在较高层次上以较抽象的方式进行系统分析的过程。3.1.1技术可行性在大学课程中所学的《数据库原理及应用教程》《Web前端开发技术》《计算机网络》以及网上课程《当JSP遇上Html——基础篇》等多门课程为我的整个毕业设计淘品旧物交易系统的设计与开发夯实了基础。本系统主要是基于JSP技术所开发的,通过连接到Mysql数据库进行数据交互实现登录、注册、发布等操作,实现html语法中的java扩展,通过在浏览器中输入网址(端口号)进行访问该网页。Mysql数据库可以通过NavicatforMysql来进行一个更加方便直观且强大的图形界面操作,通过NavicatforMysql可以直接查看数据库中的表中的数据方便验证。基于以上,可以得出,该系统的技术要求并不高,该系统的技术是可行的。3.1.2经济可行性本系统的前期课题的背景、国内外的研究现状、参考文献均由本人自行翻阅书籍及网上查询完成,不需要其他的经济成本。本系统的后期开发与实现均由本人自行在电脑上开发设计,所需要安装的软件均免费,不需要其他的经济成本。基于以上,可以得出,该系统的经济是可行的。3.1.3操作可行性该系统的用户界面简单快捷易懂,用户操作起来也十分方便,不存在复杂的用户教学,用户能立马上手,即登录注册、发布信息、查看发布信息等操作,不需要掌握数据库以及其他的相关知识。基于以上,可以得出,该系统的操作是可行的。3.2需求分析需求分析主要是将用户的通俗的需求转化为技术化的需求定义,准确的描述出使用者希望的项目的功能、性能等,主要是阐述“系统需要做什么”。3.2.1系统目标本系统的目标是在设计系统前期对使用者进行了调研与访谈。了解到了使用者(用户、管理员)的要求,包括他们对功能、性能等的要求以及希望使用的硬件和软件等方面意向,做好系统期望的总结。逻辑模型的设计是设计系统的必备条件,从逻辑上描述功能与性能目标。3.2.2性能需求1.可靠性和可用性规避用户和管理员在使用系统过程中会出现的系统问题,同时也使系统程序执行具有一定的稳定性。2.安全性只有注册过的用户才能登录使用系统,管理人员有权对不良用户或者恶意注册用户进行删除的操作。用户则通过对密码以及密码的修改来保证用户自身的信息安全。3.可用性具有友好的用户操作界面,具有完整适宜的验证机制和错误提醒机制。4.数据结构规范化数据结构规范化是为避免插入异常、删除异常,减少数据冗余,简化修改数据过程。5.模块化模块化的成型系统,系统总体结构清晰明了。3.2.3功能需求分析根据分析结果,对系统的功能和模块进行了划分,系统模块分为管理员模块和用户模块,如下表。表3-SEQ表\*ARABIC1管理员模块功能模块功能名称功能描述输入内容输出内容管理员修改登录密码管理员修改自己的账户密码点击修改密码按钮密码修改是否成功物品类别管理管理员管理物品类别进行商品类别的添加、删除操作商品类别是否添加或删除成功用户信息管理管理员管理用户信息对用户等进行查看、删除等操作是否操作成功出售信息管理管理员管理出售信息对发布出的信息进行查看、删除等是否操作成功求购信息管理管理员管理求购信息对发布出的信息进行查看、删除等是否操作成功表3-2用户模块功能模块功能名称功能描述输入内容输出内容用户在线注册对普通用户进行检测,信息通过检测后成为本系统用户用户名、密码、QQ、邮箱、联系方式。注册结果(成功或失败)在线登录保证用户通过验证后进入本系统用户名、密码用户登录是否成功和用户登录状态查看系统信息对本软件系统进行初步了解点击查看系统信息按钮按钮显示本软件系统的基本信息留言咨询功能可在出售或求购信息下面添加评论评论物品评论是否成功出售信息管理对自己的出售信息进行管理可删除、修改操作是否成功求购信息管理对自己的求购信息进行管理可删除、修改操作是否成功信息检索模块对信息进行检索关键词搜索显示出搜索结果3.2.4系统用例分析系统的功能需求是以用例图来描述,它描述各个功能模块之间的关系。1.登录/注册用例图用例名称:用户注册;用户登录;用户退出用例描述:用户没有注册过时,想要进入本系统,需要进行用户注册,输入基本信息;用户已经注册但并没有登录的情况下,想进入本系统吗,可以进行用户登录;用户已经登录成功,不需要继续使用本系统时,可以点击注销,进行用户退出。参与者:用户。前置条件:用户注册的前置条件是用户未注册;用户登录的前置条件是用户未登录;用户退出的前置条件是用户已登录。主事件流:输入登录名和登录密码;如果用户不存在,则提示用户不存在,用户可以自行选择转“注册”用例的执行;如果密码错误,则提示密码错误,同时也允许重新输入用户密码;如果密码正确,判断当前身份,根据身份进入不同的系统主界面。后置条件:用户注册的后置条件是用户注册成功;用户登录的后置条件是用户登录成功;用户退出的后置条件是用户退出系统成功。2.管理员功能用例图用例名称:管理员账号管理(修改登录密码);用户信息管理;物品类别管理;出售/求购信息管理。用例描述:在管理员已经登录的情况下,可以在管理员的后台,进行一系列管理,包括:管理员账号管理(修改登录密码);用户信息管理;物品类别管理;出售/求购信息管理。参与者:管理员。前置条件:管理员已登录。后置条件:管理员账号管理的后置条件是修改密码;用户信息管理的后置条件是生成注册的用户信息列表,查看,删除用户信息;物品类别管理的后置条件是添加,查看,删除物品类别;出售/求购信息管理的后置条件是查看,删除信息。3.用户功能用例图用例名称:查看系统信息;留言咨询;信息检索;出售/求购信息管理。用例描述:在用户已经登录的情况下,在用户的个人后台,可以进行查看系统信息;留言咨询;信息检索;个人出售/求购信息管理。参与者:用户。前置条件:用户已经登录系统。后置条件:查看系统信息的后置条件是显示系统信息;留言咨询的后置条件是评论显示;信息检索的后置条件是关键词检索;出售/求购信息管理的后置条件是查看,修改和删除信息。3.2.5业务流程分析本部分对业务流程进行分析,考虑是否需要优化。用流程图的形式描述业务流程。1.用户登录后的信息流程用户从登录到发布/浏览/修改个人信息/修改发布信息等一系列全过程。业务流程描述(2)流程中的说明用户点开软件,进入页面登录,输入用户名和密码,若错误,则弹出错误提示,正确则进入软件界面。随后出现界面含有修改当前用户个人信息、我要发布、查看我的发布、查看系统信息、注销、浏览二手物品信息等功能选择,用户当选择修改个人信息、发布二手物品、管理发布的二手物品时,都要判定当前修改或者发布是否成功,若不成功弹出错误提示。用户选择浏览二手物品信息时,可以查看二手物品信息的详情和其发布者的联系方式,可以在物品下面留言咨询。2.管理员管理流程管理员从登录进自己的个人后台到管理的全过程。(1)业务流程描述(2)流程中的说明管理员登录到管理员的后台,选择进行哪一方面的操作,一是进行发布的信息的管理,可以对其进行删除和查看操作;二是进行对类别的增删等操作,修改成功与否也需要提示管理员;三是对用户信息的管理,修改成功与否返回提示管理员;四是修改自己的登录密码,成功与否返回给自己。3.2.6环境需求本系统目前支持主流PC机,其开发的淘品旧物交易系统,是独立的应用系统,不访问其他应用系统。本系统在Windows10的操作系统下运行,要求所使用的操作系统上安装有MySQL数据库服务器、Eclipse、Tomcat服务器(已安装的Eclipse里包含Tomcat服务器)、JDK开发工具包,在此环境下,开发之前要配置好环境变量。3.3本章小结淘品旧物交易系统的前期工作系统分析,就是将使用者的需求以一个更加正式的方式定义并且呈现出来。通过使用者的不同(用户和管理员),需要深入研究不同使用者的功能需求并且了解它们之间密切的联系。总而言之,系统分析是淘品旧物交易系统开发前必不可少的环节,没有它,系统就不能进行设计开发。第4章系统设计4.1系统设计思想本课题的目的是设计一款基于jsp的淘品旧物交易系统以实现二手交易的功能。整个软件采用MVC(Model,View,Controller即模型、视图、控制器)框架,其中模型模块(数据模块)是功能层,如该系统的所有功能;视图模块则是外观层,相当于该系统的网页;控制器模块则是控制层,每一层执行不同的功能,相当于代码。4.2系统总体设计根据前面的诸多设计和分析,根据系统开发的基本理念对系统进行分解,从模块上主要分为用户模块和管理员模块。系统总体功能结构图4-1如下所示。4.3功能模块设计本节主要描述各功能模块的设计方法和设计思路等。4.3.1登录/注册1.设计思路(1)注册用户进入系统首页,通过“我还没有账号,去注册吧!”进入注册页面,对邮箱、联系方式进行验证,提交注册通过验证后,就注册成功了。(2)登录用户进入系统首页,在用户登录的地方输入自己的登陆账号和密码,就可以登录到自己的账号。管理员也在用户登录的地方输入自己管理员账号和密码,就可以登录到自己的账号,进入登陆页面。系统自己识别用户身份。2.设计方法(1)管理员账户的添加和登录管理员账户的添加方法:在数据库中添加。用户注册和登录用户通过登录界面选择“注册”,进入注册界面,输入基本信息,点击“提交”,验证成功后注册成功,方可登录。输入用户名和密码,点击“登录”出登录。4.3.2管理员模块1.设计思路管理员主要是对一些信息进行管理,主要在数据库中进行后台操作。2.设计方法(1)管理员账户管理管理员可以修改自己的个人密码。(2)注册用户信息管理查看,修改注册用户的信息。(3)物品类别管理进行商品类别的添加、删除、操作。(4)出售信息管理对发布出的信息进行查看、删除等。(5)求购信息管理对发布出的信息进行查看、删除等。4.3.3用户模块1.设计思路用户进入系统首页,输入用户名和密码登录到自己的账户,进入个人后台,就可以进行操作。2.设计方法(1)修改个人密码用户可以在此修改自己的密码。(2)查看系统信息用户可以点击“查看系统信息”按钮查询当前软件系统信息。留言咨询功能用户可以查看,删除和评论。出售信息管理用户可查看、删除、修改个人发布的信息。求购信息管理用户可查看、删除、修改个人发布的信息。信息检索用户可通过关键字检索自己想查看的物品。4.4数据库的设计4.4.1E-R图设计在数据库建立前,应对系统的数据进行概念模型,设计实体包含的属性,实体和实体之间的直接关系是怎样的,根据概念设计,得出系统总体ER图,如图4-2。4.4.2数据库表设计在服务器上建立名为tpjwjyxtsql的数据库,其中包括以下表:(1)用户信息表user。表4-1user表字段名称类型主键备注user_idint主键用户id,自增usernamevarchar用户名passwordvarchar密码emailvarchar邮箱phoneint电话号码register_timetimestamp注册时间user表的作用:此表用于用户注册存储用户的信息;通过此表可以定义用户在数据库中存储的基本信息,包括:用户名、密码、邮箱、电话号码、注册时间。用户留言表comment。表4-2comment表字段名称类型主键备注comment_idint主键评论id,自增good_idint物品iduser_idint用户idcomment_timevarchar评论时间comment_contentvachar评论内容publish_idint发布信息的iduser_namevarchar发布信息用户名goods_nameVarchar评论的物品名Foruser_namevarchar回复的用户名comment表的作用:此表用于存储用户的留言信息;通过此表片可以定义用户留言内容在数据库中存储的基本信息,包括:评论id、评论的发布信息的id、评论者id、评论者姓名、评论的物品名、回复的用户者、评论时间、评论内容。发布信息表publish。表4-3publish表字段名称类型主键备注publish_idint主键出售表ID,自增publishuser_idint发布人IDpublishuser_namevarchar发布者名称goods_namevarchar物品名goods_priceint物品价格detailvarchar物品详情statusvarchar物品状态catelog_namevarchar分类名phonevarchar联系电话publish_timetimestamp发布时间pic_namevarchar图片名publish表的作用:此表用于存储用户发布的二手物品信息;通过此表片可以定义用户发布的物品信息在数据库中存储的基本信息,包括:出售表ID、发布人ID、发布者名称、物品名、物品价格、物品详情、物品状态、分类名、联系电话、发布时间、图片名。物品分类表catelog。表4-4catelog表字段名称类型主键备注catelog_idint主键分类号ID,自增catelog_namevarchar分类名comment表的作用:此表用于存储物品的分类信息;通过此表片可以定义物品信息在数据库中存储的基本信息,包括:分类号ID、分类名。管理员表admin。表4-5admin表字段名称类型主键备注admin_idint主键管理员ID、自增admin_namevarchar管理员名称passwordvarchar管理员密码admin表的作用:此表用于存储管理人员的信息;通过此表片可以定义管理员在数据库中存储的基本信息,包括:管理员ID、管理员名称、密码。4.4.3数据库的连接设计系统采用的是jsp和MySQL数据库,jsp如何连接MySQL数据库,完成系统的数据操作如下:1.需要MySql与Java的连接驱动jar包——mysql-connector-java-8.0.16.jar,将jar包加入到项目Second_Hand下WebContent下WEB-INF下的lib中,并且buildpath。2.在jsp页面中编写好代码,实现数据库的连接和操作:Stringdriver="com.mysql.cj.jdbc.Driver";//URL指向要访问的数据库名Stringurl="jdbc:mysql://localhost:3306/tpjwjyxtsql?useSSL=false&serverTimezone=UTC&allowPublicKeyRetrieval=true&useUnicode=true&CharacterEncoding=utf-8";//MySQL配置时的用户名Stringuser="root";//Java连接MySQL配置时的密码Stringpass="ly981206";try{ //1加载驱动程序Class.forName(driver);//2连接数据库Connectionconn=DriverManager.getConnection(url,user,pass);if(conn!=null){out.println("连接成功!");}conn.close();}out.println("连接失败!");}catch(ClassNotFoundExceptione){System.out.println("Sorry,can`tfindtheDriver!");e.printStackTrace();}catch(SQLExceptione){e.printStackTrace();}catch(Exceptione){e.printStackTrace();}4.5本章小结本章主要论述了开发系统时对系统的总体设计,包括设计采用jsp+mysql,然后对系统的用户模块和管理员模块分别进行功能的详细设计,对系统的各个模块进行划分,详细介绍如何设计,最后论述了数据库的设计,包括总体ER图、数据库表、数据库的连接。第5章系统实现5.1注册模块的实现用户进入网站后,若需要注册,只需要点击链接“没有账号,注册一个”跳转到注册页面,输入用户名、密码、邮箱、联系方式,通过对邮箱、联系方式进行验证格式,若正确以post方式提交表单,连接上数据库后显示注册成功,将注册信息加入到用户信息表中返回登录界面即可进行登录。如图5-1所示。注册界面中主要的代码如下(连接数据库代码一致,这里省略)如图5-2所示:5.2登录模块的实现登录模块一共有两种身份,一种是用户,一种是管理员,当输入用户名+密码进行登录时,在数据库中查询用户表user和管理员表admin,系统自己判断当前用户的身份并显示出来。登录模块界面如图5-3所示。登录界面的主要代码:(连接数据库代码一致,这里省略)如图5-4所示:这里主要是查询数据库中的user表和admin表,若输入的用户名+密码在user表或者admin表中,则将当前的用户信息记录到session中,之后使用可直接调用session中的值。在user表中则跳转到用户界面,在admin表中则跳转到管理员界面。5.3管理员模块的实现管理员模块包含的功能有修改登录密码、物品类别管理、用户信息管理、发布的出售信息管理以及求购信息管理。通过登录界面输入管理员的用户名和密码进入到以下界面如图5-5所示:管理员界面的主要代码如图5-6所示:这里主要是对管理员的管理界面进行布局,四个模块简单明了,方便操作。5.3.1管理员——修改密码管理员中修改个人密码,显示当前管理员id,管理员名。请求输入当前密码、新密码以及密码确认,当当前密码输入不对时会弹出错误提示,当两次密码输入不一致时也会弹出错误提示,只有当输入均无误时才能成功修改个人密码,如图5-7所示。管理员修改密码的主要代码如下(连接数据库代码一致,这里省略)如图5-8所示:这里的代码主要是连接数据库后,访问数据库中admin的表,更新admin中此管理员所对应的password当中的值。5.3.2管理员——物品类别管理管理员点击物品类别管理,显示物品类别id,物品类别名以及操作(删除),还可以添加物品分类名。如下图5-9所示:主要代码如下(连接数据库代码一致,这里省略)如图5-10所示:这里采用table表将物品类别显示出来,在数据库中的catelog中去获取显示在表格中。删除操作主要代码:(连接上数据库后)如图5-11所示添加操作主要代码:(连接上数据库后)如图5-12所示这里的代码主要是对物品类别信息以一个表格的方式进行显示,然后连接数据库,将数据库中catelog的id,catelog的name显示在表格中,可以对其进行删除操作,删除操作主要就是delete的SQL语句,另外还有增加分类的操作,运用SQL的insert插入语句即可。5.3.3管理员——用户信息管理管理员点击用户信息管理,显示所有用户的用户id、用户名、用户邮箱、用户电话、用户注册的时间,还可以对用户信息进行删除。如下图5-13所示:代码如下(连接数据库代码一致,这里省略)如图5-14所示:这里的代码主要是对用户信息以一个表格的方式进行显示,然后连接数据库,将数据库中用户id、用户名、用户邮箱、用户电话、注册时间、显示在表格中,可以对其进行删除操作,删除操作主要就是delete的SQL语句。5.3.4管理员——发布信息管理管理员点击发布信息管理,可以对所有发布的信息进行查看、删除操作,发布信息显示发布id、用户id、用户名、商品名、商品价格、商品详情、商品状态、分类名、联系电话、发布的时间、发布物品的照片以及可对其进行的操作删除,如下图5-15所示:代码与上述代码雷同,这里省略。5.4用户模块的实现5.4.1用户——浏览(首页)界面用户登录进来后,显示浏览界面,浏览界面主要是对发布的商品信息进行浏览,所有信息显示最新发布的框架里,发布的商品信息以图片的方式显示出来,然后配上商品的商品状态(求购or出售)以及商品名称,让人一目了然,明确发布信息的基本内容,若想进一步了解,可以点击图片,进行一个更加详情的介绍,可以选择留言或者获取发布者的联系方式,进行近一步的交谈。首页界面包括了实现功能的通道,如右上角有修改当前密码的链接、发布的链接、查看发布的链接、查看系统信息的链接、注销的链接;头部有搜索框进行关键字搜索、左边有分类名进行分类名的检索。界面如图5-16所示:主要代码如下(连接数据库代码一致,这里省略)如图5-17所示:点击照片进入浏览详情,如图5-18所示:下拉显示用户留言以及回复如图5-19所示:主要语句(连接数据库代码一致,这里省略):Stringsql="insertintocomment(publish_id,user_id,user_name,goods_name,comment_content)values('"+publish_id+"','"+request.getSession().getAttribute("sessionid")+"','"+request.getSession().getAttribute("sessionname")+"','"+goods_name+"','"+comment_content+"')";5.4.2用户——修改密码界面用户修改密码点击首页的“当前用户”,进入到修改密码界面,与管理员修改密码界面相同,显示当前用户id,用户名。请求输入当前密码、新密码以及密码确认,当当前密码输入不对时会弹出错误提示,当两次密码输入不一致时也会弹出错误提示,只有当输入均无误时才能成功修改个人密码。如图5-20所示。主要语句:PreparedStatementtmt=conn.prepareStatement("updateusersetpassword='"+newpassword+"'where(user_id='"+user_id+"')");5.4.3用户——用户查看系统信息界面用户点击右上角的“查看系统信息”,跳转页面,显示当前的系统信息,主要包含本系统名称、运行平台、数据库以及产品开发者的联系邮箱信息,如图5-21所示:5.4.4用户——用户发布信息界面用户点击右上角的“我要发布”,跳转页面到“发布信息”,填写发布信息的基本要求,选择发布信息的商品分类,填写发布信息的发布状态,只能填入出售或者求购,若有误,弹出错误提示,照片可选可不选,然后点击发布,发布成功后,发布信息载入到数据库中,显示到用户浏览界面中。发布信息界面如图5-22所示:(由于发布信息需要上传图片,所以代码有些不同),需要在前一个页面的form提交中添加enctype="multipart/form-data"。将上传的图片添加到文件的保存路径,后面获取时直接在保存路径中即/img下获取。这里需要导入一个jspsmartupload.jar并且buildpath。主要代码如图5-23所示:5.4.5用户——用户查看发布信息界面用户点击右上角的“查看发布信息”,跳转界面,显示自己的发布信息,可对自己发布的信息进行查看、修改、删除操作。此界面还可以显示发布信息的留言情况,当其余用户浏览时对该用户发布的商品进行留言时,可在此界面查看,显示的内容有留言用户的id、留言的物品id、留言的物品名、留言的内容、留言的时间,用户可以对其留言进行一个删除或者回复。回复后可在其浏览界面看到你回复的用户、回复的内容以及回复的时间。界面如图5-24所示:5.4.6用户——用户信息检索模块在首页中,可以通过左侧的分类中分类名进行分类名信息检索,也可以通过头部的搜索框进行信息检索,搜索框中的关键字模糊与数据库的商品名、商品分类名、商品的详情,你输入的内容与它们相关即可将其商品显示出来,当搜索的内容为“狗粮”时,搜索出的内容如图5-25所示:检索模块主要代码(连接数据库代码一致,这里省略)这里的检索主要是检索输入的内容与商品名或者分类名或者商品详情模糊相似的内容,如图5-26所示:当点击左侧的分类中的“电子产品”时,显示的内容如图5-27所示:第6章系统测试6.1测试目的系统测试是对整个淘品旧物交易系统的测试,将硬件、软件、操作人员全部看成为一个整体,检测其是否有不符合系统说明书的地方。在实际运行的环境下面对系统进行一系列严格有效的测试,以发现软件系统的潜在的问题,保证系统的正常运行。本系统主要是对用户客户端的使用和后台管理员的使用,用户客户端主要是测试用户注册、用户登录、用户发布信息管理等功能是否能实现。后台主要是测试物品类别管理、用户信息管理、发布信息管理等功能是否能实现。6.2界面测试界面测试,通过用户界面测试来核实用户与软件的交互。本系统的界面测试采用黑盒测试的方法,测试界面是否能正常使用。表6-1用户界面测试表检查内容测试人测试结果各个界面元素的文字有误吗?本人正常各个界面的控件有效吗?本人正常各个界面中输入文本格式错误有提示吗?本人正常各个界面布局合理吗?本人正常各个界面有返回操作吗?本人正常数据能正确回显吗?本人正常各个界面有操作的成功提示吗?(登录成功、注册成功、修改成功、删除成功?)本人正常6.3功能测试1.用户登录测试用户以“ly”身份登录,密码为空时,出现提示框提示“请输入密码”,如图6-1。当输入密码不为“981206”时,出现提示框提示“登录失败!请重新登录!”,如图6-2所示。点击确认,返回登录界面。输入密码为“981206”时,显示登录成功!如下图6-3所示。点击确认进入到用户首页。2.用户注册测试点击“没有账号!去注册”,跳转界面到注册信息输入,输入用户名,当用户名已经存在时显示。提示输出“用户已经存在,请重新注册”,如图6-4所示。点击“确定”后,返回注册界面。输入用户名以及密码,当输入错误的邮箱格式时,提示请输入正确的邮箱,当输入错误的手机格式时,提示输入正确的手机格式,如图6-5所示:当输入都没有问题时,提示输出“用户注册成功!去登录吧!”,如图6-6所示:点击确定后,返回登录界面可进行登录。3.用户发布信息测试点击“我要发布”,跳转到发布界面,输入要发布物品的信息,发布状态只能填入出售或者求购,当填入其他内容时,弹出提示。若填写信息规范,(照片可选可不选),点击发布如下图。4.用户修改密码测试点击“当前用户”,跳转到修改个人信息界面(只能修改个人密码),界面请求输入原密码,若输入的不是原密码,弹出错误提示。当输入的原密码正确时,判断输入的新密码与输入的密码确认的密码是否一致,若两次输入不一致,弹出错误提示。当输入均正确时,弹出提示,点击确定后跳转到登录界面,进行重新登录。5.用户查看发布信息测试用户点击“查看发布信息”,可以查看用户发布的信息以及发布信息下的留言,可以对发布的信息进行修改和删除,也可以对留言信息进行回复和删除。修改发布信息内容后,提示输出。点击删除发布信息提示。用户点击留言信息进行回复提示。用户删除留言信息。6.用户留言测试用户在查看物品时可以对物品进行留言。留言成功后提示。7.管理员修改个人密码点击“修改密码”,跳转到修改个人信息界面(只能修改个人密码),界面请求输入原密码,若输入的不是原密码,弹出错误提示。当输入的原密码正确时,判断输入的新密码与输入的密码确认的密码是否一致,若两次输入不一致,弹出错误提示。当输入均正确时弹出提示,点击确定后跳转到登录界面,进行重新登录。8.管理员物品类别管理在当前显示界面,点击删除操作,删除相应的物品类别信息。输入分类名然后添加,当分类名存在时,提示输出。当分类名不存在时,提示输出。9.管理员管理用户信息。对用户信息进行查看和删除操作,点击删除操作后。10.管理员管理发布信息。对发布的信息进行查看和删除操作,点击删除操作后。11.测试用例表。对以上的功能测试进行汇总,如下表。表6-2测试用例表模块用例描述预期结果备注用户登录密码文本框不输入数据提示“请输入密码”测试密码是否为空密码文本框输入错误密码提示“密码错误”测试密码是否正确密码文本框输入正确密码提示“登录成功”测试是否能正确登录用户注册用户名文本框输入已经存在的用户名提示“该用户已经存在,请重新注册”测试用户名是否能重复存在邮箱文本框输入格式不正确的邮箱提示邮箱格式不正确,不予注册成功测试邮箱是否格式正确手机号文本框输入格式不正确的手机号提示手机号格式不正确,不予注册成功测试手机号格式是否正确各个文本框输入均正确提示注册成功,返回登录界面重新登录测试是否能正确注册用户发布信息发布状态文本框填写除了出售和发布的其他内容提示“发布状态只能填写出售和发布”测试发布状态是否能正确填写发布信息中文本框有空(照片可为空)提示不能为空,请填写测试发布信息是否完整文本框均填写完整(照片可为空),点击发布发布成功测试能否正确发布信息用户/管理员修改密码原密码文本框输入错误原密码提示原密码输入错误测试修改密码功能能否正常运行新密码输入框与确认密码输入框不一致提示两次输入新密码不一致测试修改密码功能能否正常运行输入均正确,点击修改提示修改成功,并返回登录界面重新登录测试修改密码功能能否正常运行用户发布信息管理用户对发布信息进行修改,发布状态文本框填写除了出售和发布的其他内容提示“发布状态只能填写出售和发布”测试发布信息能否正确修改发布信息中文本框有空(照片可为空)提示不能为空,请填写测试发布信息能否正确修改文本框均填写完整(照片可为空),点击发布修改成功测试发布信息能否正确修改用户对发布信息进行删除操作提示删除成功测试用户发布信息能否正确删除用户对发布信息的留言进行回复,回复内容为空时提示请进行回复测试用户能否进行正确回复操作用户输入回复内容,点击回复提示“回复成功”测试用户能否进行正确回复操作用户删除留言操作提示删除成功测试用户能否正确对留言进行删除操作用户留言用户浏览物品时留言文本框内容为空时,点击留言提示请留言测试用户能否正确留言用户输入留言内容,点击留言提示留言成功,在物品留言列表显示留言测试用户能否正确留言管理员类别管理管理员添加已经存在的分类名提示“分类名已存在”测试管理员是否能正确增加类别管理员删除分类名提示“删除成功”测试管理员是否能正确删除类别管理员添加不存在的分类名提示“加入成功”测试管理员是否能正确增加类别管理员管理用户信息管理员删除用户信息提示“删除成功”测试管理员是否能正确管理用户信息管理员管理发布信息管理员删除发布信息提示“删除成功”测试管理员是否能正确管理发布信息6.4测试结果淘品旧物交易系统进过测试和调试后基本上没有错误,基本上能满足用户的需求,能够正常运行。在本系统整体测试的过程中,系统功能相对比较简单,基本上都要与数据库进行交互,代码冗余,可以进一步进行删减完善。6.5本章小结本章主要论述了在系统开发结束后,对每个部分进行一个测试,以发现软件系统的潜在的问题,对其进行完善,保证系统的正常运行。分别进行了界面测试和功能测试,界面测试主要是测试界面是否合理、控件是否有效、界面是否能正常操作使用等。功能界面主要是对设计出的功能进行一个测试,所有功能都试一遍,查看有无异常,存在异常后对代码进行调试,最后总结出测试结果。第7章总结与展望7.1课题研究过程中遇到的难题在本次毕业设计过程中,遇到了许多难题,比较突出的如下:在发布信息界面,上传照片文件名,一直获取不了信息,后来才发现原来是文件与文本上传是不一样的,需要添加一个enctype/form-data才能上传,添加之后,在提交action的界面发现request.gerParemeter获取不了值,后经过百度查询、咨询后,才知道文件上传需要导入一个jspsmartupload.jar包,后续操作才得以进行下去。在链接<a>中可以传递参数,但当传递的参数为中文时,获取这个参数的值就为乱码,我在网上找了一系列的方法,添加request.setCharacterEncoding("UTF-8")这个也不行,在sever.xml配置文件中设计为utf-8也不行,之后看到一个方法转换一下Stringforuser_name=newString(request.getParameter("foruser_name").getBytes("ISO-8859-1"),"utf-8"),获取到的值不是乱码了。淘品旧物系统中当登录成功后,需要记录一下当前登录的用户信息以方便显示当前用户信息,这里经过上网查询得知可以利用session存储
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026广东深圳市龙岗区布吉街道布吉社区第一幼儿园招聘1人备考题库附答案详解【完整版】
- 2026江苏苏州资管集团下属公司招聘14人备考题库含答案详解(综合卷)
- 2026江西鹰潭市邮政分公司现面向社会招聘合同用工B类若干名备考题库及答案详解(真题汇编)
- 2026黑龙江牡丹江宁安市普爱医院招聘4人备考题库含答案详解(考试直接用)
- 2026江苏徐州沛县产投集团招聘1人备考题库附答案详解(典型题)
- 2026重庆两江新区物业管理有限公司外包岗位招聘1人备考题库参考答案详解
- 2026内蒙古通辽市科尔沁左翼后旗招聘政府专职消防员29人备考题库完整答案详解
- 2026浙江深泓水利工程有限公司招聘第一批项目制用工人员6人备考题库附答案详解(综合题)
- 2026广东广州番禺区第二人民医院高层次人才招聘6人备考题库附参考答案详解(能力提升)
- 国药集团2026届春季校园招聘备考题库附参考答案详解(巩固)
- 2025年10月自考13658工业设计史论试题及答案
- 白居易长恨歌
- 如何进行有效的授权
- 年产10万吨液态奶生产厂的设计-本科生毕业论文(设计)
- JJG 808-2014标准测力杠杆
- GB/T 17614.1-2015工业过程控制系统用变送器第1部分:性能评定方法
- 《大学信息技术》教学课件-大学信息技术第一章
- 肝性脑病的疾病查房课件
- 超声科晋升副高(正高)职称病例分析专题报告(超声诊断胎儿隔离肺病例分析)
- 参观监狱心得体会(10篇)精选
- DB32∕T 1005-2006 大中型泵站主机组检修技术规程
评论
0/150
提交评论