基于JAVA的校园二手物交易网站设计

2021-09-22 07:44王苏皖徐伟业马湘蓉
电子技术与软件工程 2021年13期
关键词:二手物品页面物品

王苏皖 徐伟业 马湘蓉

(信息与通信工程学院南京工程学院 江苏省南京市 211167)

1 引言

近年来,互联网的飞速发展,再加上国家倡导节俭型社会这样的背景和校园学生本身没有收入来源的前提下,学生的二手物品回收与利用具有比较重要的实际意义。因此,不妨利用校园公网覆盖的优势,借助校园网服务器开发一个二手物品的置换与交易网站。这样的网站不仅解决了学生处理二手物品的问题,还可以有效利用闲置物,促进大学生节约环保的意识。从长远角度来看,校园二手网站需求稳定,受众密集而且数量庞大,同时也具备极好的市场前景。此外,这种模式也很容易在高校推广,具有比较强的实践意义。与传统的校园二手交易方式相比,用户可以不受时间和地点的限制,随时随地进行网上浏览和交易,大大提高了处理效率。

2 软件架构选择与开发工具选择

2.1 软件架构选择

C/S(客户端/服务器)和B/S(浏览器/服务器),是再普通不过的两种软件架构方式,都可以进行同样的业务处理,甚至也可以用相同的方式实现共同的逻辑。但是因为B/S架构系统统一了客户端,无需特殊安装,拥有Web浏览器即可。它将系统功能实现的核心部分集中到服务器上,可以在服务器上安装数据库,然后浏览器通过SQL或者其它数据库来进行数据交互[1]。因此,本网站选择B/S架构。

2.2 开发工具选择

JAVA是由SUN公司推出的高级程序设计语言,其集成开发工具有很多,著名的有Eclipse、IntelliJ IDEA。Eclipse是由IBM开发的,译为日食,寓意吞并SUN公司,最终没有成功。IDEA是由JetBrains公司推出的,支持多种技术。与Eclipse相比,IDEA中的一个项目相当于Eclipse中的一个workspace。IDEA中的一个项目可以包括多个Module,一个Module相当于Eclipse中的一个项目。由于IDEA工具的出现,使Eclipse的用户大大减少,目前IDEA约占有60%的市场份额。

考虑到IntelliJ IDEA开发环境的友好,这里选择IDEA进行平台设计。在该环境下创建SpringBoot项目。这是因为SpringBoot可以省去很多配置,步骤简单。另外,虽然IDEA内部已经很好的集成了maven和tomcat,但是在项目的Type信息配置时,最好选择Maven,这样所有的相关框架的jar包就不需要手工下载和添加[2]。最后,当环境按照要求配置好,就可以着手网站开发了。

3 系统设计

校园二手物品交易平台包含前后台两部分。其中前台设计主要是注册登录、物品信息管理、购物车、物品支付等模块;后台管理系统由管理员登录、用户管理、物品管理等模块组成的。系统总体框设计框图如图1所示。

表1:注册登录功能测试表

图1:系统总体框设计框图

图2:主页面板块图

图3:模拟支付页面

3.1 系统前台功能设计

注册登录模块:以游客身份进入系统平台可以浏览物品信息,倘若要进行物品购买、评价等操作时,需进入注册页面进行账号申请。注册时,注册信息不得填写有误或为空,不符则系统会报红提示;成功后,用户即可进入登录页面,输入已注册成功的账号信息,点击登录即可。同时,该用户的相关权限也会对其开放使用。

物品信息管理模块:对物品的搜索、评价以及物品发布功能的设计。物品搜索模块设计了搜索框模式、热词搜索模式以及导航条模式三种,极大程度上满足了用户各个方面的需求,降低了时间成本,带来了良好的购物体验;物品评价模块是用户在浏览物品信息时,可对该物品进行评价或提出疑问,也可查看他人的评价信息;物品发布模块则需要用户进入发布窗口,填写详细的物品信息后,发布即可。

购物车管理模块:登录状态下,用户在浏览物品时,可以点击加入购物车按钮,将其加入进购物车内,系统提示成功;也可以直接点击我的购物车,进行查看其中的物品。

物品支付管理模块:使用了支付宝提供的沙箱版进行模拟实际操作,点击物品后面的购买按钮,即刻跳转到支付页面,支持扫码或登录支付。

个人信息管理模块:用户可以自行修改、重置个人资料,也可以查看自己发布物品的情况。

3.2 系统后台功能设计

管理员登录模块:点击后台登录跳转到后台管理系统登录页,输入管理员登录信息及验证码,账号验证通过即可进入后台管理系统。

用户管理模块:主要是对用户信息的管理与维护,管理员有权限对用户账号进行冻结与激活操作。

物品管理模块:对物品进行更为具体的整理,主要包含物品图片、物品名称、发布者学号、分类、售价、浏览量、销售状态等有关信息,便于后期的查询与统计。

评论管理模块:列举出了所有用户对物品的评语,主要是由商品名称、商品图片、商品评论、评论者、评论时间组成。当然,管理人员有操作权限,有权限去删除一些不好的评价。

公告管理模块:系统首页可以看到公告板块,目的是让用户了解并学会如何使用该系统。管理员可以对公告进行编辑、修改,发布出注意事项等相关信息,以供用户学习。

3.3 数据库设计

数据库是信息系统的一个核心,一般来说需要根据实际实现高效的数据处理。数据库设计的合理与否,对于系统的功能的实现及系统的安全性起到了决定性的作用。因此,数据库需要尽量减少数据的冗余,并且数据库的体积也要尽量减小,最后还要尽量提高数据的存储速度。基于自己的数据库的实际情况,这里选择MySQL作为系统的数据库管理系统。考虑到数据库的范式与约束[3],在数据库设计链表时,一个实体类对应一张表,最大限度避免大量数据堆积的问题。因为如果所有的数据都在一张表,无疑会增加工作难度,日后也不方便维护。另外在命名时也做到“见名知意”,保证名字和实体类方法名称的一致性。

按照实体的逻辑和联系进行信息表转换,系统一共设计了10张基础信息表,并且把学号或物品编号作为主键。分别是注册信息表、管理员信息表、学生信息表、商品信息表、评价信息表、日志信息表、商品类型表、网站信息表、菜单信息表、公告栏信息表。

4 系统实现

按照之前需求分析与系统设计,实现了系统目标,现对以下3个内容做个说明。

(1)主页面实现。当用户进入系统Index主页面时,映入眼帘的是系统名称以及LOGO,下方会有公告供其学习。登录后,可以通过搜索框进行模糊查找,筛选物品,当然也可以使用热词检索或导航栏。主页面的右侧设置购物车以及发布物品的按钮,用户可以根据需求自行选择。主页面板块图如图2所示。

(2)登录注册页面实现。用户在注册过程中,使用了Ajax方法来验证账号是否已经存在,它能够实现局部刷新,异步与服务器进行数据交换,进行验证账号是否已经存在在数据库中。用户登录,只需要正确输入已注册过的账号信息,验证通过即可顺利进入系统。

(3)支付页面实现。支付宝是第三方支付平台[4],采用SSL协议来保障支付过程的安全,其域名为http://www.alipay.com。在支付宝官网平台,找到研发服务进而来到沙箱环境,通过下载、解压、打开、生成等操作,完成对网关、秘钥等信息的查看与处理。公钥是支付宝官方进行验签的,当我们使用私钥加密好数据时,已发出请求的数据可以被监测到是否受到损害。如果想到知道该条数据是不是支付宝此时此刻需要使用的,我们有权通过查看支付公钥来核实它。

环境配置完成后,我们需要下载一个支付宝沙箱版来模拟支付,在支付过程中,通过SDK验证签名来获取商品订单号、支付宝交易号、付款金额等信息,当一切正常时,可以成功显示出支付窗口,用户进行支付操作,进而跳转进入付款成功或者失败界面。如图3模拟支付页面所示。

5 系统测试

无论开发人员如何严谨对待每个步骤,未知的不可预料的问题或多或少还会发生。测试的目的不是为了证明软件的正确性,而是为了尽可能多的发现错误,给用户带来更好的体验。

黑盒测试,也就是功能测试。它主要是进行外部测试,从系统需求着手,根据测试用例来进行相关测试,验证是否实现了设计功能[5]。白盒测试是对系统内部逻辑进行测试,通过系统内部的逻辑结构进行用例的选择,最终完成测试目的。系统对所设计的数据表进行测试,以第一张数据表,用户注册信息表为例,测试结果如表1所示。

6 结语

本系统根据校园二手物品交易的需求,经需求分析、总体设计、功能设计数据库设计、编程设计以及功能实现等,最终实现了一个基于B/S架构的二手物品交易系统。主要结合SpringBoot、Bootraps等框架技术,并运用了bootstrap Validator表单验证及ajax方法解决各类信息的验证,同时,在功能实现中通过多表链接来进行数据共享。

本设计紧紧围绕校园实际状况,适用性高、网站功能模块清晰、总体功能基本上满足了校园二手网站的要求。此外,界面人性化,操作简单,也让使用者觉得很方便。

猜你喜欢
二手物品页面物品
刷新生活的页面
称物品
“双十一”,你抢到了想要的物品吗?
谁动了凡·高的物品
基于ASP.NET的贵安大学城二手物品交易网站的设计与实现
二手物品交易电商下一个风口?
找物品
网站结构在SEO中的研究与应用
浅析ASP.NET页面导航技术