欢迎光临散文网 会员登陆 & 注册

【河北建筑工程学院毕业设计】二手物品交易网站的设计与实现

2023-08-07 13:36 作者:趣毕业  | 我要投稿


毕业设计原创性声明

 

 

本人所提交的毕业设计       二手物品交易网站的设计与实现         ,是在导师的指导下,独立进行研究工作所取得的原创性成果。除文中已经注明引用的内容外,本毕业设计不包含任何其他个人或集体已经发表或撰写过的研究成果。对本文的研究做出重要贡献的个人和集体,均已在文中标明。

本声明的法律后果由本人承担。

毕业设计版权使用授权书

 

本毕业设计作者完全了解河北建筑工程学院有权保留并向国家有关部门或机构送交毕业设计的复印件和磁盘,允许毕业设计被查阅和借阅。本人授权河北建筑工程学院可以将毕业设计的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或其它复制手段保存、汇编毕业设计。

保密的毕业设计在_______年解密后适用本授权书。

  

中国人口基数大,闲置商品的数量也极为庞大。闲置商品再利用率低,大多数是以废品回收的方式处理闲置商品,由于对空闲物品的流通有着诸多的担忧,人们无法安心地进行流通,因此,人们对流通中的空闲物品的流通也就变得越来越困难。因为当前,闲置商品交易平台还面临着商品质量保证、平台体验、交易售后和服务监管等诸多问题。在这个平台上注册的物品,大部分都是本地人的物品,种类繁多,数量庞大,因为没有一个准确的评价,所以品质良莠不齐。二手物品交易网站也是对于当前大学生需求的满足,大学生在校生活需要许多的二手物品来进行利用,例如书籍以及相关宿舍生活用品等,而大学毕业生恰好可以提供。本系统的实现,为供求双方提供了方便,同时在功能和性能上较好地吻合大众的需求,很好地处理了二手闲置资源,使资源最大化地再次得到利用。

本文论述了基于Java和SSM框架的二手物品交易平台的设计和实现,该网站从实际用的角度出发,运用了计算机网站设计、数据库等相关计算机知识,基于ssm框架和Mysql数据库来实现的,网站界面进行了人性化的设计,操作简便具有使用价值。本文主要从该网站的设计初衷、功能的架构,运用的相关技术、数据库的构建、具体的实现等方面来进行论述。在详细设计部分主要论述了系统功能设计和数据库的构建。在本文的最后对网站的调试结果进行了说明和总结。

关键词二手物品交易;ssm框架;Mysql数据


Abstract

China has a large population base and a huge number of idle goods. The recycling rate of idle goods is low, and most of them are disposed of in the way of waste recycling. Many residents have the idea of trading, Since there are many concerns about the circulation of idle items, people cannot circulate with peace of mind, so it is becoming more and more difficult for people to circulate idle items in circulation. Because at present, the idle commodity trading platform is also facing many problems such as commodity quality assurance, platform experience, transaction after-sales and service supervision. Most of the items registered on this platform are local items, with a wide variety and huge quantity, because there is no accurate evaluation, so the quality is uneven.Second-hand goods trading website is also for the current needs of college students, college students in school life need a lot of second-hand items to use, such as books and related dormitory daily necessities, and college graduates can just provide.The implementation of this system provides convenience for both supply and demand. At the same time, it meets the needs of the public in terms of function and performance, and handles the second-hand idle resources well, so as to maximize the reuse of resources.

This article mainly discusses the design and implementation of the second-hand goods trading platform based on Java and SSM framework, the website from the perspective of practical application, the use of computer website design, database and other related computer knowledge, based on the SSM framework and MySQL database to achieve, the website interface is humanized design, easy to operate and has use value. This article mainly discusses the original design intention of the website, the architecture of the function, the related technologies used, the construction of the database, and the specific implementation. In the detailed design section, the design of system functions and the construction of the database are mainly discussed. At the end of this article, the debugging results of the website are explained and summarized.

Key words: second-hand goods trading; Ssm framework; MySQL database


 

 

目  录

1章 绪论

1.1 本课题研究背景

1.2 国内外现状

1.2.1国内现状

1.2.2国外现状 3

1.3 本课题研究的目的和意义 3

1.4 论文所做的主要工作 4

2章 系统实现的技术支持 5

2.1 SSM框架 5

2.2 MySql数据库 5

2.3系统对MySQL数据库的两种连接方式 6

2.4访问数据库实现方法 6

2.5 B/S结构 6

3章 二手物品交易平台分析 8

3.1需求分析 8

3.2 功能分析 8

3.3可行性分析 9

3.3.1  经济可行性 9

3.3.2  技术可行性 9

3.3.3  运行可行性 10

4章 总体设计 11

4.1系统结构设计 11

4.2 数据库设计 11

4.2.1 数据库设计原则 12

4.2.2 数据库实体 12

4.2.3 数据库表设计 13


5章 系统实现 18

5.1系统功能模块 18

5.2管理员功能模块 20

5.3持物者功能模块 27

5.4购买者功能块..............................................................................................................29

6章 系统的调试和测试 32

总结 33

参考文献 34

致谢 35



 

1章 绪论

1.1 本课题研究背景

近年来城市与社会经济发展较快,人们的生活水平不断提高,消费观念发生很大变化,随着因特网技术的发展,网络已经进入到人们日常生活的各个方面,悄无声息地改变着人们的生活方式。在国内,利用网站进行二手商品的交易渐渐变成一种常见的交易方式。比如我们常见的二手商品、二手房交易市场等类似的网站近几年的发展趋势就非常的好。这类二手交易网站的发展的最大的优势在于信息传播快、时效性高。近年来国家在倡导节约型的建设,随之兴起二手商品的交易热潮。这种现象的出现虽然能促进节约思想的树立,但是如果在里毫无规矩的交易二手商品,就会影响的正常秩序从而造成混乱。

然而,在网络、电脑等科技发达的今天,网上的旧货买卖却重新焕发出了勃勃生机。然而,消费观念,投资成本,技术人才等问题仍有待解决。另外,由于旧货的付款方式和旧货的损坏等原因,也限制了旧货交易的发展。因此,如何有效地解决高校二手商品市场中存在的问题,成为高校二手商品市场发展的当务之急。而这些二手商品的买卖,也有很大的发展空间。根据中国互联网信息中心(CNNIC)的研究:“因为刚刚从压力很大的中学转学到大学,对于大学生的生活还不够习惯,因此,在大学生中网购的人数不足五分之一,而在大四期间,而网购的人,几乎翻了一倍。”并且每年的毕业生在离校的时候普遍会丢弃大量的学习资料或生活用品,而那些旧货如果不加以妥善使用,就会成为废物。因此,如果我们可以搭建一个二手产品的平台,让那些产品可以低价出售,那么对于那些不想要的人和想要的人来说,都是一件好事。这也是为什么我们要设立一个二手商品交易平台。随着时间的推移,网络购物对于我们而言已是司空见惯,相对于传统的购物方法,网络购物既方便又快速,而且还很有趣。因此我国发展电子商务营销要根据自己的行业特点、目标市场消费者的行为特征、所在地的经济实力、营销环境状况等因素来制定本二手物品交易平台的目标,选择适合上网交易的产品,及时调整策略,赢得二手市场主导地位。

习近平总书记在党的十九大开幕式上明确提出:“绿色发展,从其要义来说,是要解决好人与自然和谐共生的问题”,从国家统计局和教育部公布的最近的数字来看,现在,我国的大学生数量是2695.8万,拥有大学学历的人是1.9593。面对这样一个数量庞大的持有者群体,构建一个以持有者为核心的旧货交易平台有着现实的意义,其潜力也是非常大的。通过互联网平台进行的二手商品交易,最让买家和卖家担心的就是对方对自己的不信任,而现在,像是腾讯这样的社会化媒体,将会给卖家带来更多的好处,这对于“熟人经济”来说,无疑是一个巨大的助力。但是,在交易双方多为个人用户的情况下,就需要第三方交易平台将保护用户的交易安全作为其最初的目的,将在该平台绑定的银行卡和在平台指定的支付账户中的信用状况作为参照,构建出一个用户的信用评价体系。在后续的用户交易过程中,可以在完成交易之后,加入买方和卖方之间的互评机制,从而让消费者更加清楚地识别出交易对象的信用状态。

此外,与成熟的电商市场相比,当前在物流和售后方面,对二手电商的保护还存在不足之处,特别是对数码3 C产品以及大宗家电、家具的质量保证方面。而不能直接送货的旧货,则是绕不开的一环。高技术和大项目虽然是平台的主要营收来源,但也是与使用者进行买卖的一个薄而柔软的环节。这主要是由于,在高成本的情况下,人们对其剩余价值的评价往往缺乏权威,从而影响了使用者对其资源的配置。要想处理这种商品,就必须要有第三方平台,负责邮寄、拆装、清洗;包括评估,销售和售后在内的一系列的服务.藉由本公司所提供之具权威性之测试及评价,可解除消费者对于商品品质与售后等方面之疑虑,此既有助于提高本公司使用者的满意程度,亦可加强客户忠诚度;可以更好地带动大量的空闲商品交易。

1.2 国内外现状

1.2.1 国内现状

国内闲置商品大多数是以回收废品的方式进行处理,少数地方线下会有跳蚤市场,有的人在社区交流群里进行闲置商品转让,互联网市场也有着不少的闲置商品交易平台,像闲鱼、转转等。回收废品的方式商品利用率低,传统的跳蚤市场受时间和地点等因素的限制,普通交流群不能提供专门的服务,而已存在的像闲鱼、转转等平台由于受众广泛,处理缓慢且转让成本高,以上这些交易方式不能够及时满足用户需求[3]。

利用 Java Web技术建立了一个网上的货物贸易平台,由林梅教授的《基于 Java Web二手商品交易网站的设计与实现》所提出。本系统以 Eclipse为开发环境,以 MySQL数据库为基础,以 JSP技术、 Servlet技术、 JDBC技术等为核心。本网页旨在为学生携带人士提供便利,携带人士可以免费购买和购买物品,是学生携带物品最便捷、最安全的方式。该商品交易网站实现的功能有:用户登录/注册、商品发布和商品购买等[4] 。通过对市场的调研与分析可知,现在正是互联网时代,在我国网络的交易中,网上二手交易已成为不可或缺的一部分。

时合生、赵晓阳等人的《基于 Java的校园二手物品交易网站的设计与实现》中,以 Eclipse+ MySQL+导航+ VS编码为核心,对其进行了详细的介绍和分析。用 MyEclipse+ MySQL来撰写网页的设计, Navicat来对需要的数据库进行修改和连接, VS代码来进行修改和优化。其中最重要的问题就是现代大富豪们过度消耗的东西。根据用户对该网站的需求分析,可以得出该系统功能模块如下:用户管理模块、二手物品信息管理模块、交易管理模块、订单管理模块 [5]。

赖家美龚志伟通过《高校二手交易市场》的构建随着电子商务的快速发展,二手品交易已经成为人们日常工作和生活各个方面中不可缺少的一部分。针对目前校园二手交易平台管理、反馈等功能不够完善,采用MVC模式重新构建平台,实现了二手交易网的用户登录注册、举报、交流、购物与商品查询、后台数据库管理等功能[6]。使大学生可以低价购买到自身喜欢的商品,实现学校内学习资源与生活资源的高效循环利用。

1.2.2 国外现状

欧美地区的部分民众在19世纪就已开始组建“空余货物市场”,并形成了“空余货物市场”。随着网络的迅速发展,网络已经越来越多地变成了一种对剩余物品进行交换的强大手段。以美国庞大的闲置商品市场为例:线下有无数旧物交易商店,线上拥有诸如ebay的闲置商品交易网站,也有着例如Freecycle之类面向全球的公益组织,通过免费赠送的方式来转置闲置商品[7]。

作为新兴的网站服务行业,国内二手交易网站历史并不长,其中较为并为人们所知的有中国二手网、赶集网以及各地地区性的二手网。其中的全球二手网注册用户已接近30万,已登记二手闲置物品超过300多万件,成功交易量超过一百万笔,交易成功率超过90%,每天交易量超过100万元[8]。每一天,在全球二手网上发布各类信息的用户有二十万,在全球二手网网上浏览信息的网民有二百万[9]。

从客户端进入全球二手网首页可以进行分地区、分类别浏览,也可以按照关键词搜索要找的信息。能直接与世界各地信息提供者取得联系。也可将发布分类广告,当网民检索或者通过分类目录进行浏览时即可看到广告。还可以留下联系信息方便第一时间找到发布者[10]。

全球二手网是将闲置的二手物品转让交易的自由空间。它信息类型覆盖全面,分类详细,且搜索引擎功能强大,筛选详细。该网站结构简单、清晰明了,其客户服务中心为用户提供了许多附加功能,方便操作。当然,其他的一些知名网站也包含二手物品交易的功能,如易趣网就为国内大众提供了一个具有国际性的二手物品交易板块 [11] 。

因为该系统是一个在线的购物系统,是一个电子商务网站,因此,传统的 C/S (客户端/服务器)体系结构显然不适合。“由于 C/S一般适用于在公司内发展,比如 MIS。”而对于互联网上的网络应用,则要求使用 B/S (Browser/Server)架构。B/S架构的客户端使用的是人们上网冲浪是必不可少的浏览器。这种方式简单易学,培训成本低,因此B/S架构得到迅速拓展。随着Internet的兴盛,电子商务的快速发展,B/S甚至已经取代了许多传统的C/S市场。

通过以上的研究,我们可以确认该系统是以微软视窗 XP系列为基础,以 IIS资讯伺服器做为网络伺服器,以 ssm架构来实现其动态互动,以 MYSQL为背景资料库。

1.3 本课题研究的目的和意义

现实生活对自己的一些已经用不到的物品很苦恼;因为现在这些东西如同鸡肋一般留之无味,弃之可惜。而二手商品网站的出现让这些鸡肋一般的二手商品有了新的去处,其市场潜力由此可见一斑,所以创建二手物品交易平台是切实可行的。他允许使用者卖掉那些不适合他们使用的旧货,而对于那些没有固定收入的使用者来说,他也能便宜地购买到他们需要的旧货。总结起来二手物品交易平台有以下几点好处

1. 以类似于跳蚤市场online的形式,提供用户之间互利互惠的交易平台。

2. 操作简单,用户可以在家里就能淘到自己想要的二手商品,而且时效性强。

3. 不会对正常的秩序与管理造成影响,不会三五成群的摆放影响地方美化。

4. 能够宣扬艰苦朴素,勤俭节约的中华民族的优良美德。

而在旧货市场上,最大的特色就是可以进行自由的交换,从发布求购信息到看货,再到谈判价格,全凭买家自己决定。旧货的买家和卖家在跳蚤市场上做生意,没有中间商,没有手续费总结起来有以下一些优点:

1. 对于买家:毫无疑问,它很廉价,能为买家节省很多金钱。还有,在二手市场上做生意,也能帮你找到省钱的方法,让你对自己的财务有更清晰的认识。

2. 对销售者来说:他可以把自己不需要的二手商品以低于市场价卖出,这样既不用留着那些二手商品还可以有一小笔收入,不会造成不必要的浪费,同时也可以为他人提供一些便利,何乐而不为呢?

3. 手给需要使用这些二手商品的人手上,大大减少了资源的重复利用。这样的事情从小事做起有利于我国节约型社会的转型。

1.4 论文所做的主要工作

本文主要完成的工作就是从对网站的需求分析着手,与自己在学校所学的知识以及在图书馆查找的资料相结合。逐步讲解二手物品交易平台构成,数据库管理等一些主要方面的设计。尤其是对于每一个功能模块的具体设计,都会用一章来具体说明。通过这种方式,可以方便地让读者了解到网页的总体思路以及总体的设计理念,从而增强本文的可读性。


第2章 系统实现的技术支持

2.1 SSM框架

目前非常受欢迎的“SSM组合框架”,即 Spring+ SpringMVC+ MyBatis的简称,它是一种非常受欢迎的技术,而“组合 SSM框架”则是一种强强合作,各司其职,协同互补的合作模式。一个网络工程的架构,经常是一个更简单的资料来源。Spring既是一种轻量化翻转控制架构,又是一种面向曲面的容器。SpringMVC经常被用来作为一种分级的工作方式,从模型中分离出来,并将编程中的目标作为 ATM来处理。这个分离的疗法使得我们可以更方便地实现整体的个人化。MyBatis是一种很好的可持续发展的架构,它可以在提供正常 SQL查询的基础上,通过更高层次的映射来实现对数据的最优处理。针对大规模 JAVA网络应用软件在开发时存在的高费用、后期维护困难等问题,提出了基于“SSM组合框架”的商业层级构建方法,为该问题的有效解决提供了很好的方法。AO和服务两个层面是可以分别进行开发的,二者之间的耦合性较小,能够各自实现各自的功能;这种方式对于大型工程的发展具有特别大的好处,控制器、视图等层次由于高度的耦合性,需要联合起来进行发展;但也可以将其视为与前面两个层次分开的一个整体。因此,在进行各层次间的转换时,我们只要了解界面的定义,对界面进行调用就可以实现所需的逻辑单位的应用,所有的事情都变得十分明了和简单。

2.2 MySql数据库

数据库,也被称作数据管理系统,它可以被看作是电子化的文件柜,是一个存储电子文件的地方,使用者可以对文件中的资料执行新增、查询、更新;删除等操作。Mysql的语言并不具有结构化,因此用户无法对此进行操作。Mysql因为其编程方法和构造方法相对简单,而且功能强大,并且存储了大量的数据,所以 Mysql在速度、可靠性、适应性等方面得到了普遍的认可和应用。Mysql数据库在计算机编程中占有举足轻重的位置,为用户带来了极大的方便。Mysql的特点:灵活性高,功能强,语言简单。资料流动分析,一般都是在网路上执行,而非真正的资料库。而数据库管理则主要包含了对数据进行保存、更新、增加、生成等操作。建立了一个数据库,可以调整数据库中的数据,重新组合,重新组合,保证了数据库的安全性。鉴于数据库具有较强的工作能力和较强的工作能力,在此系统的设计中,我们将 Mysql用于数据的管理。


2.3 系统对MySQL数据库的两种连接方式

激活 MySQL/MySQL程式库,或者利用 ODBC介面, MySQL资料库为双向连结。永久性和永久性的联系。

1.持久连线:更持久的连线要求最大的好处就是能让用户在紧密连线时高效地与用户保持联络,尤其是与 MySQL的伺服器相连时。在草拟本页的每个小孩都在此流程中,并不只是在某一时刻,只是在向 MySQL服务器要求的生活周期内,只要一次。这一次的程序是为一个独立的服务器创建一个可以是永久的。

2.不稳定的联结:它被认为是“短接”。递交过程会直接到达网页服务器,后者会对你所要求的网页进行处理,随后就会中断连接。对大部分站点来说,这往往是与高效和高效相关,但是更多的是与链接相关;但是,为了防止发生什么问题,为了提高服务器的容量,这是一种充分的安排。

2.4 访问数据库实现方法

1.首先,关于在互联网上进行万维网数据库检索的基础程序:

第一个步骤:查看客户资料

第二个步骤:您需要与您的资料库连结。

第三个步骤:搜寻资料库。

第四个步骤:对资料进行构造。

第五:将显示这个使用者的成果。

2.在 MYSQL5.0 PHP整合的开发环境之前,对该系统进行测试,例如,在启动和更易于存取的 WAMP伺服器,以及用于报表的更易于存取的环境:

其中一个与 MySQL的数据库服务器相连。

文法:资源的mysql_connect (宿主、使用者名称、口令).

您需要为您的资料库选取:mysql_select_db (资料库连结识别的名字)。

结束资料库:则mysql_close();

2.5 B/S结构

B/S体系架构是当前应用最为广泛的体系架构,这种架构能使整个体系架构的设计变得更为简便,易于操作,并且便于管理和维护。利用这种架构,只要在电脑里装上一个资料库,以及几个非常常见的浏览器即可。这样,用户就可以通过浏览器和数据库建立起一个信息的链接,从而可以完成许多的工作, B/S结构可以被直接应用,并且在实际应用中大大降低了工作的维护成本。在 B/S架构下,各数据库彼此隔离,具有很高的安全性。由于采用 B/S架构,可以清晰地了解该体系所要解决的问题,便于经理们作出及时的决定,从而避免了公司的亏损。B/S体系架构最根本的特征就是采用集中式的管理方式,通过对数据的处理,使得在应用过程中产生的数据可以被保存在数据库里,便于以后再利用;这些东西,都能让人满意。三级 B/S模型如图2.1所示。

图2.1 三级B/S模型结构图

3章 二手物品交易平台分析

3.1 需求分析

用户的需要可以通过提供、保存、更新和查询等方式来表现出来,这就需要一个能够对各种信息的输入和输出进行全面的适应的数据库结构。搜集基础资料、资料架构、资料处理之过程,编制详细之资料辞典。

在对此系统的功能和结构进行了分析之后,我们就可以归纳出系统的需求。如下:

1. 使用系统的用户分为管理员、购买者持物者三个角色。

2. 不同的用户类型对应不同的页面访问权限。

3. 使用者可以查询自己的个人资料,并对自己的旧货资料进行更改。

4. 为了招揽相应的客户,需要将最近上载的二手物品的有关资料贴出来。

5. 可以由管理员对用户信息进行管理

3.2 功能分析

通过上面的需求分析,我们能够分析出系统的主要功能包括:

1. 首页轮播:每个轮播所需要的图片(广告图片)都是由后台管理系统进行添加。

2. 二手物品的分类:彩妆、服装、饰品、鞋包、电子产品、生活用品、玩具、学习用品。

3.二手商品检索:使用者在输入栏内键入所需商品的名字等关键词,即可查询所需的旧货。

4.旧货陈列:将旧货陈列在主页上,例如:陈列旧货的名字、照片、价钱等,照片尽量与实际相符。

5.旧货详细信息:按旧货详细信息,可直接进入旧货详细信息页面,详细信息页面可提供旧货详细信息,包括旧货详细信息、旧货详细信息、旧货详细信息等;使用过的产品的出版者的名字和出版的日期。

6.二手商品收:通过在二手商品详细信息页面上的“收”按钮,可以对所收集到的二手商品进行收集,并在“个人中心”的收藏栏里看到我搜索到的那些二手商品。

7.买旧货:在详细信息中单击“买”键,进入付款单,在付款单上输入买方名称,联系方式,收货地址;填写好相关资料后,按下“前往支付”按钮,就可以完成缴费。

8.旧货信息发布:使用者可在贴中输入与旧货有关的资料,如书名、物件简介、照片等;分类,价格等信息,再按“立即发布”键,就可以发表了。此二手商品一经发行,将会被后台的系统管理员审查,审查合格后,将会出现在二手商品的页面上。

9. 二手物品的火爆推荐:可以通过点击浏览量来推荐。

10. 二手物品的求购:没有索引到自己想要的物品时,可以发布求购物品的相关信息:物品名称,要求,数量

11. 个人中心:显示我的订单、我的收藏、我的发布,联系客服等。

管理员管理系统功能

1. 旧货管理:能够对旧货分类中的旧货进行添加、删减、查找、添加旧货、移除旧货、下架旧货;成批成批的下,旧货的审查,旧货的查询等等。

2. 使用者管理:加入、删除与使用者有关的资讯,并进行编辑。

3. 评论管理:对使用过的商品的评论信息进行管理,包括删除相关评论、查看评论等功能。

4. 订单管理:可以对用户产生的订单进行管理,可以对订单进行浏览,删除等。

3.3 可行性分析

伴随着科技的飞速发展,网络购物逐渐走进了大家的日常生活,特别是如今的青少年。此二手商品买卖平台具有较高的实用价值,对使用者和他人均有重要的实用价值。要想完成这个系统的全部功能,就一定要选择一个既要设计得好,而且要设计得好,只有这样,才能够确保对数据的正常存取和更改,并对之后的系统进行维护、更改和功能扩展。本文主要从以下几个方面对网页进行了详细的介绍和分析。本网页是以 SSM为基础,以简单易学、易于维护为特色,适用于较小的网页。总的来说,这个软件可以分为两部分,第一部分是我们看到的使用者介面,以一系列的页面为主;因此,需要拥有一个良好的用户界面,可以被用来进行开发的工具有很多。目前,比较受欢迎的有 Dreamweaver (这是目前使用最多的网页编辑工具,支持 DHTML动态网页、 Flash动画和插件)Fireworks (主要被用来制作网页图像、标志、图像按钮和导航栏等), Flash (主要被用来制作矢量动画,如广告、网站片头动画和 MTV等),出于现实适用性和与数据库的结合,最终选择了 Dreamweaver。另一方面,在数据库方面,可以使用的软件也很多,如 Mysql、 Oracle等;根据该题目所要实现的功能,使用的是 Mysql数据库,系统以 Windows XP为基础的开发操作系统,程序可以在其中运行,就像是一个服务器端一样,如果有多台计算机连通,那么就可以将它配置为一个服务器。由另一台电脑充当客户机,以实现 B/S方式运行。

3.3.1 经济可行性

软件的经济可行性是从数量和经济角度来看,这样的软件开发,开发投资是合适的。这套二手物品交易平台可以提高使用者的工作效率,提供给消费者更多的二手交易信息。经济上亦是可行的,不需要大量资金,开发成本低,而且还可以提高人的实践能力。

3.3.2 技术可行性

按照这个系统的目标,来对所需要的技术进行度量,通常可以从硬软件的性能要求、环境条件、操作人员水平和数量等几个角度来进行考虑和分析。

为了便于实现,就软件而言,我们选用了目前比较受欢迎的 MyEclipse工具,并利用 Mysql数据库来保存数据。

而在硬件上,有很大的可供选择的余地,如果有更高的配置,那么这个系统的发展和运转将会更加顺畅。从目前家庭或商业计算机的总体配置来看,该系统在硬件上是切实可行的。

至于软件,因为 MyEclipse和 Mysql都已经能够很好地用了,不管是在安全性,可用性还是可靠性上,它们都是毋庸置疑的。

3.3.3 运行可行性

近年来,因特网在中国得到了快速的发展,在日常工作和学习生活中,网络技术得到了日益广泛的应用。由于很多公司的生意对象是全国的,即使是在海外,也有很多公司在扩张的过程中会涉足到出口。通过网络进行旧货交易,既节省了交易的时间,又节省了交易的空间,是一种有效的交易方式,也是一种有效的交易方式。

二手物品交易平台操作简单易学,方便快捷,很适合各种群体用户学习使用,而且对于系统的管理人员的相关管理条件很成熟。因此,运行方面是可靠的。

4章 总体设计

4.1 系统结构设计

系统结构设计是系统设计的基础,系统结构图只是这个步骤一个缩影,系统的总体结构决定了整个系统模式,也是系统的基础。二手物品交易平台的整体结构设计如图4.1所示。

图4.1 系统总体结构图

4.2 数据库设计

数据库:它是计算机系统的基础。目前为止,在微机系统中,数据库是最重要的组成部分。软件的发展程度将会直接关系到整个系统的品质。数据库的设计是指在一定的应用环境下,对数据库的逻辑方式和物理结构进行构造(设计)和优化,并基于该构造一个数据库及其应用系统,使其能够有效地对数据进行存储和管理。以满足各种用户的需求。它包括数据加工和数据加工两个要求。

数据库之设计目的:为使用者及各类应用程式,提供资讯架构与高效运作之运作环境。

数据库设计的基本工作:以用户的信息需求、处理需求和数据库的支持环境(包括硬件、操作系统和 DBMS)为依据,设计出数据库模式(包括外模式、逻辑模式和内模式)以及它们的应用程序。

4.2.1 数据库设计原则

数据库结构设计采用E-R模型设计方案。它以属性、联系和实体表示,E-R模型采用E-R图的形式体现出来,在系统设计当中数据库起着决定性的因素。以下设计出这几个关键的实体——关系图

4.2.2 数据库实体

数据模型中的实例,好比现实生活中可区分对象的事件或事物。例如,学校中的每个学生和老师,家里中的每个家

本系统的E-R图如下图所示:

1、闲置商品信息实体图如图4.2所示:

图4.2 闲置商品信息实体图

2、求购信息实体图如图4.3所示:

图4.3 求购信息实体图

3、购买者个人信息实体图如图4.4所示:

图4.4 购买者个人信息实体图

4.2.3 数据库表设计

数据库的表信息属于设计的重要组成部分以下就对数据库中的表的详细信息进行介绍。

adderss表能够储存系统中所有的地址信息,如图4.1所示。

Cart表能够储存系统中购物车的信息,如图4.2所示。

discussxianzhishangpinxinxi表存储系统中的相关信息,如图4.3所示。

  Message表可以储存我们系统的中的所有信息,如图4.4所示。

 Qiugouxinxi表可以存储系统中所有求购要求的信息,如图4.5所示。

Sixiajiaoyi表可以储存系统中私下交易的信息,如图4.6所示。

Huifu表可以储存系统中交易后回复的信息,如图4.7所示。

 Usuer表可以存储系统中所有管理者的信息,如图4.8所示

xianzhishangpinxinxi表可以存储相关信息,如图4.9所示。

 Xuesheng表可以存储系统中学生登录的信息,如图4.10所示。

 Youke表可以存储登录过程中游客的相关信息,如图4.11所示。

5章 系统实现

5.1 系统功能模块

二手物品交易平台,在系统首页可以查看首页、闲置商品信息、求购信息、二手物品、个人中心、后台管理、购物车等内容进行详细操作,如图5.1所示。

图5.1 系统首页界面图

二手物品信息,在闲置商品信息页面可以查看商品名称、价格、商品编号、商品图片、商品分类、学号、姓名、联系电话、商品详情等详细内容进行添加到购物车、立即购买、评论或收藏等操作,如图5.2所示。

图5.2 二手物品信息界面图

求购信息,在求购信息页面可以查看求购商品名称、收购要求、收购价格、图片、学号、姓名、联系电话、具体需求等详细内容,如图5.3所示。

图5.3 求购信息界面图

个人中心,在个人中心页面通过填写姓名、性别、年龄、联系电话、邮箱、身份证、上传图片、余额等信息进行更新操作,还可以对我的发布、我的订单、我的地址、我的收藏进行相应操作;如图5.4所示。

图5.4 个人中心界面图

商品订单,在商品订单页面可以查看购买商品、价格、数量、总价等详细信息,并进行删除或点击购买等操作,如图5.5所示。

图5.5 商品订单界面图

5.2 管理员功能模块

管理员登录,通过填写注册时输入的用户名、密码、选择角色进行登录,如图5.6所示。

图5.6 管理员登录界面图

/**

*登录相关

*/

@RequestMapping("users")

@RestController

public class UserController{


@Autowired

private UserService userService;


@Autowired

private TokenService tokenService;

 

/**

*登录

*/

@IgnoreAuth

@PostMapping(value = "/login")

public R login(String username, String password, String captcha, HttpServletRequest request) {

UserEntity user = userService.selectOne(new EntityWrapper<UserEntity>().eq("username", username));

if(user==null || !user.getPassword().equals(password)) {

return R.error("账号或密码不正确");

}

String token = tokenService.generateToken(user.getId(),username, "users", user.getRole());

return R.ok().put("token", token);

}


/**

*注册

*/

@IgnoreAuth

@PostMapping(value = "/register")

public R register(@RequestBody UserEntity user){

//     ValidatorUtils.validateEntity(user);

     if(userService.selectOne(new EntityWrapper<UserEntity>().eq("username", user.getUsername())) !=null) {

      return R.error("用户已存在");

     }

        userService.insert(user);

        return R.ok();

    }

 

/**

*退出

*/

@GetMapping(value = "logout")

public R logout(HttpServletRequest request) {

request.getSession().invalidate();

return R.ok("退出成功");

}


/**

    *密码重置

    */

    @IgnoreAuth

@RequestMapping(value = "/resetPass")

    public R resetPass(String username, HttpServletRequest request){

     UserEntity user = userService.selectOne(new EntityWrapper<UserEntity>().eq("username", username));

     if(user==null) {

      return R.error("账号不存在");

     }

     user.setPassword("123456");

        userService.update(user,null);

        return R.ok("密码已重置为:123456");

    }


/**

    *列表

    */

    @RequestMapping("/page")

    public R page(@RequestParam Map<String, Object> params,UserEntity user){

        EntityWrapper<UserEntity> ew = new EntityWrapper<UserEntity>();

     PageUtils page = userService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.allLike(ew, user), params), params));

        return R.ok().put("data", page);

}

管理员登录进入系统后可以对首页、个人中心、购买者管理、商品分类管理、二手物品管理、商品求购管理、持物者管理、系统管理、订单管理等信息进行详细操作,如图5.7所示。

图5.7 管理员功能界面图

持物者管理,在持物者管理页面中可以对索引、姓名、性别、年龄、联系电话、邮箱、身份证、照片等信息进行详情,修改或删除等操作,如图5.8所示。

图5.8 持物者管理界面图

二手物品管理,在二手物品管理页面中可以对索引、商品编号、商品名称、商品分类、图片、学号、姓名、联系电话、价格、审核回复、审核状态、审核等信息进行详情、查看评论或删除等操作,如图5.9所示。

图5.9 二手物品管理界面图

商品求购管理,在商品求购管理页面中可以对索引、求购商品名称、图片、收购要求、收购价格、学号、姓名、联系电话等信息进行详情或删除等操作,如图5.10所示。

图5.10 商品求购管理界面图

/**

*商品求购

*后端接口

*@author 

*@email 

*@date 2030-03-10 20:45:29

*/

@RestController

@RequestMapping("/shangpinqiugou")

public class ShangpinqiugouController {

    @Autowired

    private ShangpinqiugouService shangpinqiugouService;

 

 

    @Autowired

    private StoreupService storeupService;

 

    

 

 

    /**

    *后端列表

    */

    @RequestMapping("/page")

    public R page(@RequestParam Map<String, Object> params,ShangpinqiugouEntity shangpinqiugou,

HttpServletRequest request){

 

String tableName = request.getSession().getAttribute("tableName").toString();

if(tableName.equals("goumaizhe")) {

shangpinqiugou.setGoumaizhanghao((String)request.getSession().getAttribute("username"));

}

        EntityWrapper<ShangpinqiugouEntity> ew = new EntityWrapper<ShangpinqiugouEntity>();

PageUtils page = shangpinqiugouService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, shangpinqiugou), params), params));

        return R.ok().put("data", page);

    }

    

    /**

    *前端列表

    */

@IgnoreAuth

    @RequestMapping("/list")

    public R list(@RequestParam Map<String, Object> params,ShangpinqiugouEntity shangpinqiugou,

HttpServletRequest request){

        EntityWrapper<ShangpinqiugouEntity> ew = new EntityWrapper<ShangpinqiugouEntity>();

PageUtils page = shangpinqiugouService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, shangpinqiugou), params), params));

        return R.ok().put("data", page);

    }

购买者管理,在购买者管理页面中可以对索引、账号、姓名、性别、头像等信息进行详情、修改或删除等操作,如图5.11所示。

图5.11 购买者管理界面图

 *购买者

 *后端接口

 *@author 

 *@email 

 *@date 2030-03-10 20:45:29

 */

@RestController

@RequestMapping("/goumaizhe")

public class GoumaizheController {

    @Autowired

    private GoumaizheService goumaizheService;

 

 

 

    

@Autowired

private TokenService tokenService;


/**

*登录

*/

@IgnoreAuth

@RequestMapping(value = "/login")

public R login(String username, String password, String captcha, HttpServletRequest request) {

GoumaizheEntity user = goumaizheService.selectOne(new EntityWrapper<GoumaizheEntity>().eq("goumaizhanghao", username));

if(user==null || !user.getMima().equals(password)) {

return R.error("账号或密码不正确");

}

String token = tokenService.generateToken(user.getId(), username,"goumaizhe",  "购买者" );

return R.ok().put("token", token);

}


/**

    *注册

    */

@IgnoreAuth

    @RequestMapping("/register")

    public R register(@RequestBody GoumaizheEntity goumaizhe){

     //ValidatorUtils.validateEntity(goumaizhe);

     GoumaizheEntity user = goumaizheService.selectOne(new EntityWrapper<GoumaizheEntity>().eq("goumaizhanghao", goumaizhe.getGoumaizhanghao()));

if(user!=null) {

return R.error("注册用户已存在");

}

Long uId = new Date().getTime();

goumaizhe.setId(uId);

        goumaizheService.insert(goumaizhe);

        return R.ok();

    }

 


/**

*退出

*/

@RequestMapping("/logout")

public R logout(HttpServletRequest request) {

request.getSession().invalidate();

return R.ok("退出成功");

}


/**

    *获取用户的session用户信息

    */

    @RequestMapping("/session")

    public R getCurrUser(HttpServletRequest request){

     Long id = (Long)request.getSession().getAttribute("userId");

        GoumaizheEntity user = goumaizheService.selectById(id);

        return R.ok().put("data", user);

    }

    

订单管理,在已支付订单页面中可以对索引、订单编号、商品名称、商品图片、购买数量、价格/积分、折扣价格、总价格/总积分、折扣总价格、支付类型、状态、地址、电话、收货人等信息进行详情、发货或删除等操作,还可以对已完成订单、已退款订单、等进行相应操作;如图5.12所示。

图5.12 订单管理界面图

5.3 持物者功能模块

持物者登录进入系统可以查看首页、个人中心、二手物品管理商品求购管理商品订单管理等进行详细操作,如图5.13所示。

图5.13 持物者功能界面图

/**

*持物者

*后端接口

*@author 

*@email 

*@date 2030-03-10 20:45:29

*/

@RestController

@RequestMapping("/chiwuzhe")

public class ChiwuzheController {

    @Autowired

    private ChiwuzheService chiwuzheService;

 

 

 

    

@Autowired

private TokenService tokenService;


/**

 

商品订单管理中页面中可以对索引,价格,收货地址,联系电话等相应操作,如图5.14所示。

图5.14 持物者购买订单界面图

5.4 购买者功能模块

购买者登录进入系统可以对首页,个人中心,商品订单管理,物品求购管理等信息进行详细操作,如图5.15所示。

图5.15 购买者功能界面图

商品订单管理页面中可以对索引,购买者详细信息等进行操作,如图5.16所示。

图5.16 购买者商品订单管理界面图

/**

*商品订单

*后端接口

*@author 

*@email 

*@date 2030-03-10 20:45:29

*/

@RestController

@RequestMapping("/shangpindingdan")

public class ShangpindingdanController {

    @Autowired

    private ShangpindingdanService shangpindingdanService;

 

 

 

    

 

 

    /**

    *后端列表

    */

    @RequestMapping("/page")

    public R page(@RequestParam Map<String, Object> params,ShangpindingdanEntity shangpindingdan,

HttpServletRequest request){

 

String tableName = request.getSession().getAttribute("tableName").toString();

if(tableName.equals("chiwuzhe")) {

shangpindingdan.setChiwuzhanghao((String)request.getSession().getAttribute("username"));

}

if(tableName.equals("goumaizhe")) {

shangpindingdan.setGoumaizhanghao((String)request.getSession().getAttribute("username"));

}

        EntityWrapper<ShangpindingdanEntity> ew = new EntityWrapper<ShangpindingdanEntity>();

PageUtils page = shangpindingdanService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, shangpindingdan), params), params));

        return R.ok().put("data", page);

    }

    

    /**

    *前端列表

    */

    @RequestMapping("/list")

    public R list(@RequestParam Map<String, Object> params,ShangpindingdanEntity shangpindingdan,

HttpServletRequest request){

        EntityWrapper<ShangpindingdanEntity> ew = new EntityWrapper<ShangpindingdanEntity>();

PageUtils page = shangpindingdanService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, shangpindingdan), params), params));

        return R.ok().put("data", page);

    }

 

/**

购买者求购商品管理页面中可以对索引,相关商品的相关信息等进行操作,如图5.17所示。

图5.17 购买者商品求购管理页面

6章 系统的调试和测试

调试其实也是一个相当重要的过程,对于编程完成的功能,并不一定很完善,很多时候不像程序员想象中那么顺利,有很多漏洞都是在调试过程中发现的。测试前,我们首先要清空数据库中的所有数据,然后输入少量的数据进行测试。测试过程中有些功能并不是像构思好的那样顺序执行,并且有时系统会很不稳定,所以测试帮助我们发现错误并对程序做一些修改和完善。

本系统的测试应从用户注册测试开始,然后再进行用户登录测试,对系统的各个模块的功能进行测试,查看是否与需求说明上要求的功能一致。有时候少写一条语句、session未执行或者数据库的某些字段名字改掉了而造成引用不成功这样的小错误是常有的,有时删掉了一些方法但是忘记在前台页面上删除会引发一些错误或者MySql语句不正确之类的错误都也是比较常见的。

在本系统的测试中我遇到了几个比较“纠结”的问题,最开始是MySql语句部分总是提示user附近有语法错误,怎么都不能做数据库的查询,就是在user表创建时,软件会在表名外加上一个“[]”,导致我的表名总是错误无法查询;MySql还有一个我自己造成的问题,就是我无意中把MySql的登录名给删掉了,导致我没有办法链接到数据库,后来在老师的帮助下我才意识到问题出在这个地方,最后还是重新装的MySql这写问题也就都没有了。最后在做商品的查询/修改时也遇到了很大的问题,后台语句的逻辑和MySql语句都没有错误,系统也按照逻辑顺序提示修改成功,可是就是数据库中的内容没有修改,后来发现每做一个操作页面会刷新,就刷新成了数据库中原来的值,MySql语句确实update成功了,只是修改的是原来的数据,所以看起来没有任何修改,我通过在页面加载方法中添加if (!IsPostBack){}方法,这样就解决了页面刷新的问题。还有一个比较麻烦的问题就是模糊查询和类型查询的综合查询,一开始只定义了全局变量,总是查询失败,后来通过打断点测试,发现全局变量的值不易保存,后来改成了session变量,查询就成功了。当然遇到的问题不止这三个,还有很多的小问题,不过在模块测试时一一解决了。

调试是一个需要耐心的工作,所以只是大体上执行一下是不会发现漏洞的,应该把每个功能都多调试几,把可能的顺序或方法都试验一遍,数据库中多添加一些东西,多次重复调用,尽可能地找出问题,这样才能够使网站更加完善。并且我认为当发现问题并解决问题的时候会体会到很大的成就感和快乐!这种感觉更鼓励我继续努力!


总结

网站基于SSM框架,采用Mysql数据库,重点介绍了数据库,B/S结构,订单管理,用户对商品的浏览;自身的商品信息,管理员对商品,用户进行管理等。本文介绍了一种新开发的网站,介绍了本网站的开发过程,并介绍了本网站在日常生活中的应用。此站点使用简便,快捷功能齐全,顺应当前社会的潮流,适用于校园二手交易等。当然,一个完整的二手物品交易平台,还需要有很强吸引力的页面美观效果,但这就是这个设计的缺陷。在此过程中,我们要注意怎样才能吸引人们的眼球,怎样才能做到既有美感,又有实用性。网站不仅仅是一个销售和购买商品的平台,更重要的是要满足人们的需要,这就是本网站存在的目的,因此要有更多的人性化元素。

在这段时间里,我对计算机程序的编写过程有了进一步的认识,尽管编写程序是一项艰苦而又无聊的工作;不过,如果你亲自动手做一件事情,并且把这个事情做好,那你还是有很大的成就感的。每一个人在面对问题时,都会非常的头疼,在本次过程中也遇到了许多问题,比如说在搭建B/S框架时框架始终搭建不对,程序运行时也有许多问题,例如找不到数据库,程序运行不起来等。但是解决了问题之后那种喜悦也是无法言语的。虽然过程很艰辛但是完成之后所给自己带来的喜悦与成就感是其他所不能代替的。并且在完成本网站的过程中把以前学过的知识又重新复习一遍,通过解决规程中出现的问题也学习到许多新的知识。从需求分析和可行性分析到最终完成了设计,涉及的知识领域包括:网站开发、网页设计、数据库原理、软件工程、专业外语等等。并且当社会计算机行业发展迅速,也给了我们带来了很大的压力,所以我们只书本上和课堂上学习知识是远远不的,我们更应该不断的充实自己的相关知识去锻炼自己,多做做项目,培养动手的能力,并且在项目完成的过程中才能检测自己的学习有没有真正合格


参考文献

[1]林梅,胡元闯,殷玉玲.基于Java Web二手商品交易网站的设计与实现[J].今日财富,2019(16):76-77.

[2]时合生,赵晓阳.基于Java的校园二手物品交易网站的设计与实现[J].天工,2019(10):120.

[3]赖家美,龚志伟.高校二手交易市场的构建[J].福建电脑,2018,34(11):53-54.

[4]郑戟明,董云朝,柳青.MySQL数据库数据导入导出方法的探讨[J].电脑知识与技术,2022,18(22):24-25.DOI:10.14004/j.cnki.ckt.2022.1517.

[5]赵学作.MySQL数据库主从数据同步的设置[J].网络安全和信息化,2021(11):94-97.

[6]陈钊.SSM框架在Web应用开发中的设计与实现研究[J].电脑知识与技术,2021,17(10):226-227.DOI:10.14004/j.cnki.ckt.2021.1097.

[7]徐茹月,李雨城.基于二手物品交易融入电子商务平台建设研究[J].南方农机,2021,52(03):159-161.

[8]盛莉.基于MySQL的数据管理平台设计[J].信息与电脑(理论版),2020,32(22):152-153.

[9]郁慧琴,杨若岚,王坤.闲宝宝二手物品交易平台开发[J].中小企业管理与科技(中旬刊),2020(10):160-161.

[10]邱丹萍.Web开发中SSM框架的分析[J].电脑知识与技术,2020,16(17):81-82.DOI:10.14004/j.cnki.ckt.2020.2080.

[11] Pena Bello Alejandro, Parra David, Herberz Mario et al. Integration of prosumer peer-to-peer trading decisions into energy community modelling[J] .Nature Energy, 2021, 7(1)

[12]刘彤月. 基于SSM的分布式商城的设计与实现[D].中国地质大学(北京),2020.DOI:10.27493/d.cnki.gzdzy.2020.001006.

[13]金朋朋. 网络二手交易平台法律规制问题研究[D].湖南师范大学,2020.DOI:10.27137/d.cnki.ghusu.2020.000082.

[14]李士勇,杜鹃.MySQL数据库应用技术,北京邮电大学出版社,2019年05月。

[15]张帆. 基于JSP的校园网站的设计与实现[D].吉林大学,2021.

[16]曾小立, 广东省广电集团公司Internet网站设计与实现. 广东省,广东省电力试验研究所,2021-01-01.


致谢

本次毕业设计首先感谢的是我的指导教师,在毕业设计过程中,老师一直指导并关注我的设计进程,帮助我解决设计中我解决不了的问题,给我正确的指导,让我能够以良好的心态对待毕业设计,并且在整个毕业设计的过程中为我提出了许多宝贵的意见和建议。在这里再次感谢老师。

最后,感谢所有在毕业设计给予我帮助的老师、同学、朋友们。在整个设计过程中给我指导和鼓励,并在我困难的时候帮助我。我还要感谢我的家人,谢我亲爱的父母,感谢他们给我自始至终的支持与鼓励。山水一程,三生有幸。岁月清浅,时光亦潋滟。因缘相聚,同窗之情,感家之暖。同窗之情深刻万分,手足之情,亦或如实。相伴左右,情真意切,昨日之光景历历在目,岁月流觞,往事亦可追。聚是一团火,散是满天星。愿我们相遇,还是当年少年郎,纸短情长,多谢不表。

行文至此,感激不尽,书不尽言,愿我们来日相聚。

 

 

 


 







【河北建筑工程学院毕业设计】二手物品交易网站的设计与实现的评论 (共 条)

分享到微博请遵守国家法律