SSM校园二手交易平台是针对大学生群体而设计的一款在线交易平台。该平台的目的是为大学生提供一个便捷、安全、可靠的交易渠道,帮助他们买卖二手商品。平台具有以下特点:注重安全性:平台采取严格的用户认证和身份验证机制,确保交易双方的信息安全和交易的可靠性。方便快速的发布和搜索:用户可以轻松发布自己要出售的二手商品,同时也可以通过平台快速搜索到自己需要的商品。交流与沟通:平台提供即时聊天功能,方便买卖双方进行交流和协商价格、交付方式等细节。评价与信誉系统:平台设有评价和信誉系统,用户可以相互评价交易体验,提高交易的透明度和信任度。多种商品类别:平台支持多种商品类别,涵盖电子产品、书籍、衣物、家具等大学生常见的二手商品。
通过SSM校园二手交易平台,大学生可以方便地与其他学生进行二手交易,节省时间和金钱,同时也促进了可持续消费和资源回收。该平台为大学生提供了一个安全、便利的交易环境,为他们提供了更多交流和交流的机会,促进了校园内部的互助和合作。
关键词:二手交易平台;Java语言;SSM框架;Mysql数据库
SSM campus second-hand trading platform is an online trading platform designed for college students. The purpose of the platform is to provide a convenient, safe and reliable trading channel for college students to help them buy and sell second-hand goods. The platform has the following characteristics: Pay attention to security: The platform adopts strict user authentication and authentication mechanism to ensure the information security and the reliability of the transaction. Convenient and fast release and search: users can easily post the second-hand goods they want to sell, but also can quickly search for the goods they need through the platform. Communication and communication: The platform provides instant chat function to facilitate buyers and sellers to communicate and negotiate the price, delivery method and other details. Evaluation and credit system: The platform has an evaluation and credit system, in which users can evaluate each other and improve the transparency and trust of transactions. Multiple product categories: The platform supports a variety of product categories, covering electronic products, books, clothes, furniture and other second-hand goods common to college students.
Through the SSM campus second-hand trading platform, college students can easily conduct second-hand trading with other students, saving time and money, while also promoting sustainable consumption and resource recovery. The platform provides a safe and convenient trading environment for college students, provides them with more opportunities to communicate and communicate, and promotes mutual assistance and cooperation within the campus.
Key words: second-hand trading platform; Java language; SSM framework; Mysql databas
目录
随着互联网和移动互联网的快速普及,二手交易平台成为了一种流行的交易方式。在校园里,由于学生的需求多样化和经济有限,二手交易活动也十分活跃。然而,在传统的线下交易中存在一些问题,比如信息不对称、商品质量不确定等,给买家和卖家带来了不便和风险。研究目的:为解决校园内的二手交易问题,提高交易效果和用户满意度,设计和开发一款适用于SSM(Student-Specific Platform for Mobile)校园的二手交易平台。基于SSM校园的特点,设计平台的功能模块,包括用户注册、信息发布、商品搜索、在线交流、支付结算等。通过建立SSM校园二手交易平台,可以方便学生之间进行二手交易,提高购买和销售的效率,并减少信息不对称和风险。此外,通过对平台数据的分析,可以为校园内的商家提供市场调研和营销策略的参考,促进校园经济的发展。同时,该研究也为其他高校和相关行业的二手交易平台设计。
SSM校园二手交易平台是一种针对大学生群体的二手交易平台,旨在方便大学生之间买卖闲置物品。国内对于类似校园二手交易平台的研究主要集中在用户行为分析、交易模式探讨、平台功能优化等方面。研究者一般会关注用户在平台上的购买和出售行为特征,探讨用户的交易偏好和行为动机,同时也会针对平台的功能设计和用户体验进行改进建议。此外,研究领域还包括对于校园二手交易平台发展趋势的预测和市场规模分析等方面。不同研究方法和视角为研究者提供了深入了解和了解校园二手交易平台运营和发展的可能性。
国外关于校园二手交易平台的研究主要集中在市场研究、用户体验、信任与安全、社交与社区互动以及可持续发展等方面。研究内容包括用户行为、市场现状、用户体验改进、信任与安全机制、社交功能对用户互动的影响以及交易对环境和资源的影响。这些研究旨在促进校园二手交易平台的可持续发展,提升用户体验和社区互动。
论文将分层次经行编排,除去论文摘要致谢文献参考部分,正文部分还会对系统需求做出分析,以及阐述大体的设计和实现的功能,最后罗列部分调测记录,论文主要架构如下:
第1章 交代项目的背景、开发这个系统的现状以及论文的章节安排情况。
第2章 对系统的具体需求展开分析。
第3章 阐述了系统的设计,其中涵盖了功能设计以及数据库的设计。
第4章 阐明了二手交易平台各个功能模块的实现,以图文的形式进行展示。
第5章 罗列了部分系统调试与测试的记录。
第6章 介绍了二手交易平台的结论。
二手交易平台存储所使用的是Mysql数据库以及开发中所使用的是IDEA、Tomcat这些开发工具的使用,能够给我们的编写工作带来许多的便利。系统使用SSM框架进行开发,使系统的可扩展性和维护性更佳,减少Java配置代码,简化编程代码,目前SSM框架也是很多用户选择的框架之一。
在开发二手交易平台中所使用的开发软件像IDEA开发工具、Tomcat服务器、MySQL数据库等,这些都是开源免费的,这些环境在学校都进行了系统的学习,自己能够独立操作完成,不需要额外花费,而且系统的开发工具从网上都可以直接下载,因此在经济方面是可行的。
此次项目设计的时候我参考了很多类似系统的成功案例,对它们的操作界面以及功能都进行了系统的分析,将众多案例结合在一起,突出以人为本简化操作,所以具有基本计算机知识的人都会操作本项目。因此操作可行性也没有问题。
二手交易平台的功能分析包括管理员和普通用户两个角色。具体功能分析如下:
普通用户:
(1)首页:展示最新发布的二手物品信息、推荐的热门物品以及平台的相关公告和活动信息。
(2)网站公告:显示校园二手交易平台的最新公告,包括平台的更新、维护、活动等信息。
(3)二手资讯:提供二手交易相关的实用资讯,如商品选择指南、交易安全指南等,帮助用户更好地进行交易。
(4)求购物品:用户可以发布求购物品的信息,描述所需物品的详细要求,并等待其他用户出售相关物品。
(5)二手物品:展示用户发布的二手物品列表,包括物品的图片、描述、价格等详细信息,用户可以根据需求浏览并选择购买。
(6)学生信息:用户可以编辑和管理个人信息,包括姓名、性别、学校、专业等,以便其他用户更好地了解卖家的身份和背景。
(7)求购物品:用户可以发布自己的求购物品信息,并随时查看和管理自己的求购记录。
(8)二手物品:用户可以发布自己要出售的二手物品信息,并随时查看和管理自己的发布记录。
(9)购买订单:用户可以查看自己的购买订单,包括已购买的物品和交易状态。
(10)收藏:用户可以将自己感兴趣的二手物品收藏起来,方便以后查看和购买。
- 后台首页:管理员登录后,可以查看平台的整体运行情况和统计数据,包括注册用户数、发布物品数、成交订单数等。
(2)系统用户管理:管理员可以管理系统的用户账号,包括添加、编辑、禁用和删除用户账号,以及查看用户的基本信息和操作记录。
(3)学生信息管理:管理员可以浏览和管理用户的学生信息,包括学生的姓名、学号、学校、专业等,以保证用户的身份真实性和交易的安全性。
(4)求购物品管理:管理员可以查看和管理用户发布的求购物品信息,包括审核发布的求购信息、下架不合规或失效的求购信息等。
(5)物品类型管理:管理员可以管理平台的物品类型,包括添加、编辑和删除物品分类,以确保平台分类的准确性和有效性。
(6)二手物品管理:管理员可以浏览和管理用户发布的二手物品信息,包括审核发布的物品信息、下架不合规或失效的物品信息等。
(7)购买订单管理:管理员可以管理用户的购买订单,包括查看订单详情、确认订单状态、处理用户的投诉和退款申请等。
(8)系统管理:管理员可以对系统进行管理,包括修改系统设置、配置邮件通知、备份数据等操作。
(9)网站公告管理:管理员可以发布和管理网站公告,包括发布平台的更新通知、维护公告、活动信息等,以及编辑、删除已发布的公告。
(10)资源管理:管理员可以管理平台的资源,包括图片、文件等,方便后续使用和检索。
二手交易平台的非功能性需求比如二手交易平台的安全性怎么样,可靠性怎么样,性能怎么样,可拓展性怎么样等。具体可以表示在如下3-1表格中:
表2.1 二手交易平台非功能需求表
安全性 | 主要指二手交易平台数据库的安装,数据库的使用和密码的设定必须合乎规范。 |
可靠性 | 可靠性是指二手交易平台能够安装用户的指示进行操作,经过测试,可靠性90%以上。 |
性能 | 性能是影响二手交易平台占据市场的必要条件,所以性能最好要佳才好。 |
可扩展性 | 比如数据库预留多个属性,比如接口的使用等确保了系统的非功能性需求。 |
易用性 | 用户只要跟着二手交易平台的页面展示内容进行操作,就可以了。 |
可维护性 | 二手交易平台开发的可维护性是非常重要的,经过测试,可维护性没有问题 |
二手交易平台中用户角色用例图如图2.1所示:
图2.1用户角色用例图
二手交易平台中管理员角色用例图如图2.2所示:
图2.2管理员角色用例图
系统功能模块包括管理员模块和普通用户模块,登录进去对应相应的功能,具体的功能模块图如图3.1所示。
图3.1 二手交易平台功能模块图
数据库的设计承载者系统的各种数据,在建立数据库的时候,主要是数据库模型的设计以及各个数据库表的设计两部分。
下面是整个二手交易平台中主要的数据库表以及总E-R实体关系图。
图3.2 二手交易平台总E-R关系图
通过前面E-R关系图可以看到项目需要创建很多个数据表。以下是项目中的主要数据库表的关系模型:
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | token_id | int | 10 | 0 | N | Y | 临时访问牌ID | |
2 | token | varchar | 64 | 0 | Y | N | 临时访问牌 | |
3 | info | text | 65535 | 0 | Y | N | ||
4 | maxage | int | 10 | 0 | N | N | 2 | 最大寿命:默认2小时 |
5 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
6 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
7 | user_id | int | 10 | 0 | N | N | 0 | 用户编号: |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | article_id | mediumint | 8 | 0 | N | Y | 文章id:[0,8388607] | |
2 | title | varchar | 125 | 0 | N | Y | 标题:[0,125]用于文章和html的title标签中 | |
3 | type | varchar | 64 | 0 | N | N | 0 | 文章分类:[0,1000]用来搜索指定类型的文章 |
4 | hits | int | 10 | 0 | N | N | 0 | 点击数:[0,1000000000]访问这篇文章的人次 |
5 | praise_len | int | 10 | 0 | N | N | 0 | 点赞数 |
6 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
7 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
8 | source | varchar | 255 | 0 | Y | N | 来源:[0,255]文章的出处 | |
9 | url | varchar | 255 | 0 | Y | N | 来源地址:[0,255]用于跳转到发布该文章的网站 | |
10 | tag | varchar | 255 | 0 | Y | N | 标签:[0,255]用于标注文章所属相关内容,多个标签用空格隔开 | |
11 | content | longtext | 2147483647 | 0 | Y | N | 正文:文章的主体内容 | |
12 | img | varchar | 255 | 0 | Y | N | 封面图 | |
13 | description | text | 65535 | 0 | Y | N | 文章描述 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | type_id | smallint | 5 | 0 | N | Y | 分类ID:[0,10000] | |
2 | display | smallint | 5 | 0 | N | N | 100 | 显示顺序:[0,1000]决定分类显示的先后顺序 |
3 | name | varchar | 16 | 0 | N | N | 分类名称:[2,16] | |
4 | father_id | smallint | 5 | 0 | N | N | 0 | 上级分类ID:[0,32767] |
5 | description | varchar | 255 | 0 | Y | N | 描述:[0,255]描述该分类的作用 | |
6 | icon | text | 65535 | 0 | Y | N | 分类图标: | |
7 | url | varchar | 255 | 0 | Y | N | 外链地址:[0,255]如果该分类是跳转到其他网站的情况下,就在该URL上设置 | |
8 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
9 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | auth_id | int | 10 | 0 | N | Y | 授权ID: | |
2 | user_group | varchar | 64 | 0 | Y | N | 用户组: | |
3 | mod_name | varchar | 64 | 0 | Y | N | 模块名: | |
4 | table_name | varchar | 64 | 0 | Y | N | 表名: | |
5 | page_title | varchar | 255 | 0 | Y | N | 页面标题: | |
6 | path | varchar | 255 | 0 | Y | N | 路由路径: | |
7 | position | varchar | 32 | 0 | Y | N | 位置: | |
8 | mode | varchar | 32 | 0 | N | N | _blank | 跳转方式: |
9 | add | tinyint | 3 | 0 | N | N | 1 | 是否可增加: |
10 | del | tinyint | 3 | 0 | N | N | 1 | 是否可删除: |
11 | set | tinyint | 3 | 0 | N | N | 1 | 是否可修改: |
12 | get | tinyint | 3 | 0 | N | N | 1 | 是否可查看: |
13 | field_add | text | 65535 | 0 | Y | N | 添加字段: | |
14 | field_set | text | 65535 | 0 | Y | N | 修改字段: | |
15 | field_get | text | 65535 | 0 | Y | N | 查询字段: | |
16 | table_nav_name | varchar | 500 | 0 | Y | N | 跨表导航名称: | |
17 | table_nav | varchar | 500 | 0 | Y | N | 跨表导航: | |
18 | option | text | 65535 | 0 | Y | N | 配置: | |
19 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
20 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | collect_id | int | 10 | 0 | N | Y | 收藏ID: | |
2 | user_id | int | 10 | 0 | N | N | 0 | 收藏人ID: |
3 | source_table | varchar | 255 | 0 | Y | N | 来源表: | |
4 | source_field | varchar | 255 | 0 | Y | N | 来源字段: | |
5 | source_id | int | 10 | 0 | N | N | 0 | 来源ID: |
6 | title | varchar | 255 | 0 | Y | N | 标题: | |
7 | img | varchar | 255 | 0 | Y | N | 封面: | |
8 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
9 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | comment_id | int | 10 | 0 | N | Y | 评论ID: | |
2 | user_id | int | 10 | 0 | N | N | 0 | 评论人ID: |
3 | reply_to_id | int | 10 | 0 | N | N | 0 | 回复评论ID:空为0 |
4 | content | longtext | 2147483647 | 0 | Y | N | 内容: | |
5 | nickname | varchar | 255 | 0 | Y | N | 昵称: | |
6 | avatar | varchar | 255 | 0 | Y | N | 头像地址:[0,255] | |
7 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
8 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
9 | source_table | varchar | 255 | 0 | Y | N | 来源表: | |
10 | source_field | varchar | 255 | 0 | Y | N | 来源字段: | |
11 | source_id | int | 10 | 0 | N | N | 0 | 来源ID: |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | hits_id | int | 10 | 0 | N | Y | 点赞ID: | |
2 | user_id | int | 10 | 0 | N | N | 0 | 点赞人: |
3 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
4 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
5 | source_table | varchar | 255 | 0 | Y | N | 来源表: | |
6 | source_field | varchar | 255 | 0 | Y | N | 来源字段: | |
7 | source_id | int | 10 | 0 | N | N | 0 | 来源ID: |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | item_type_id | int | 10 | 0 | N | Y | 物品类型ID | |
2 | item_classification | varchar | 64 | 0 | Y | N | 物品分类 | |
3 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
4 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | notice_id | mediumint | 8 | 0 | N | Y | 公告id: | |
2 | title | varchar | 125 | 0 | N | N | 标题: | |
3 | content | longtext | 2147483647 | 0 | Y | N | 正文: | |
4 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
5 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | praise_id | int | 10 | 0 | N | Y | 点赞ID: | |
2 | user_id | int | 10 | 0 | N | N | 0 | 点赞人: |
3 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
4 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
5 | source_table | varchar | 255 | 0 | Y | N | 来源表: | |
6 | source_field | varchar | 255 | 0 | Y | N | 来源字段: | |
7 | source_id | int | 10 | 0 | N | N | 0 | 来源ID: |
8 | status | bit | 1 | 0 | N | N | 1 | 点赞状态:1为点赞,0已取消 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | purchase_items_requested_id | int | 10 | 0 | N | Y | 求购物品ID | |
2 | user_account | int | 10 | 0 | Y | N | 0 | 用户账号 |
3 | serial_number | varchar | 64 | 0 | Y | N | 物品编号 | |
4 | item_name | varchar | 64 | 0 | Y | N | 物品名称 | |
5 | item_type | varchar | 64 | 0 | Y | N | 物品类型 | |
6 | quality_of_items | varchar | 64 | 0 | Y | N | 物品成色 | |
7 | purchase_quantity | int | 10 | 0 | Y | N | 0 | 求购数量 |
8 | item_photos | varchar | 255 | 0 | Y | N | 物品照片 | |
9 | hits | int | 10 | 0 | N | N | 0 | 点击数 |
10 | praise_len | int | 10 | 0 | N | N | 0 | 点赞数 |
11 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
12 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | purchase_order_id | int | 10 | 0 | N | Y | 购买订单ID | |
2 | serial_number | varchar | 64 | 0 | Y | N | 物品编号 | |
3 | item_name | varchar | 64 | 0 | Y | N | 物品名称 | |
4 | item_type | varchar | 64 | 0 | Y | N | 物品类型 | |
5 | quality_of_items | varchar | 64 | 0 | Y | N | 物品成色 | |
6 | item_status | varchar | 64 | 0 | Y | N | 物品状态 | |
7 | item_price | varchar | 64 | 0 | Y | N | 物品价格 | |
8 | user_account | int | 10 | 0 | Y | N | 0 | 用户账号 |
9 | purchase_quantity | int | 10 | 0 | Y | N | 0 | 购买数量 |
10 | total_amount | varchar | 64 | 0 | Y | N | 合计金额 | |
11 | purchase_time | datetime | 19 | 0 | Y | N | 购买时间 | |
12 | pay_state | varchar | 16 | 0 | N | N | 未支付 | 支付状态 |
13 | pay_type | varchar | 16 | 0 | Y | N | 支付类型: 微信、支付宝、网银 | |
14 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
15 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | regular_users_id | int | 10 | 0 | N | Y | 普通用户ID | |
2 | user_name | varchar | 64 | 0 | Y | N | 用户姓名 | |
3 | user_gender | varchar | 64 | 0 | Y | N | 用户性别 | |
4 | examine_state | varchar | 16 | 0 | N | N | 已通过 | 审核状态 |
5 | user_id | int | 10 | 0 | N | N | 0 | 用户ID |
6 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
7 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | second_hand_items_id | int | 10 | 0 | N | Y | 二手物品ID | |
2 | user_account | int | 10 | 0 | Y | N | 0 | 用户账号 |
3 | serial_number | varchar | 64 | 0 | Y | N | 物品编号 | |
4 | item_name | varchar | 64 | 0 | Y | N | 物品名称 | |
5 | item_type | varchar | 64 | 0 | Y | N | 物品类型 | |
6 | quality_of_items | varchar | 64 | 0 | Y | N | 物品成色 | |
7 | item_status | varchar | 64 | 0 | Y | N | 物品状态 | |
8 | item_price | int | 10 | 0 | Y | N | 0 | 物品价格 |
9 | inventory_quantity | varchar | 64 | 0 | Y | N | 库存数量 | |
10 | item_photos | varchar | 255 | 0 | Y | N | 物品照片 | |
11 | hits | int | 10 | 0 | N | N | 0 | 点击数 |
12 | praise_len | int | 10 | 0 | N | N | 0 | 点赞数 |
13 | recommend | int | 10 | 0 | N | N | 0 | 智能推荐 |
14 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
15 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | slides_id | int | 10 | 0 | N | Y | 轮播图ID: | |
2 | title | varchar | 64 | 0 | Y | N | 标题: | |
3 | content | varchar | 255 | 0 | Y | N | 内容: | |
4 | url | varchar | 255 | 0 | Y | N | 链接: | |
5 | img | varchar | 255 | 0 | Y | N | 轮播图: | |
6 | hits | int | 10 | 0 | N | N | 0 | 点击量: |
7 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
8 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | student_information_id | int | 10 | 0 | N | Y | 学生信息ID | |
2 | student_account | int | 10 | 0 | Y | N | 0 | 学生账号 |
3 | user_name | varchar | 64 | 0 | Y | N | 学生姓名 | |
4 | student_departments | varchar | 64 | 0 | Y | N | 学生院系 | |
5 | student_major | varchar | 64 | 0 | Y | N | 学生专业 | |
6 | student_class | varchar | 64 | 0 | Y | N | 学生班级 | |
7 | student_age | int | 10 | 0 | Y | N | 0 | 学生年龄 |
8 | contact_information | varchar | 16 | 0 | Y | N | 联系方式 | |
9 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
10 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | upload_id | int | 10 | 0 | N | Y | 上传ID | |
2 | name | varchar | 64 | 0 | Y | N | 文件名 | |
3 | path | varchar | 255 | 0 | Y | N | 访问路径 | |
4 | file | varchar | 255 | 0 | Y | N | 文件路径 | |
5 | display | varchar | 255 | 0 | Y | N | 显示顺序 | |
6 | father_id | int | 10 | 0 | Y | N | 0 | 父级ID |
7 | dir | varchar | 255 | 0 | Y | N | 文件夹 | |
8 | type | varchar | 32 | 0 | Y | N | 文件类型 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | user_id | mediumint | 8 | 0 | N | Y | 用户ID:[0,8388607]用户获取其他与用户相关的数据 | |
2 | state | smallint | 5 | 0 | N | N | 1 | 账户状态:[0,10](1可用|2异常|3已冻结|4已注销) |
3 | user_group | varchar | 32 | 0 | Y | N | 所在用户组:[0,32767]决定用户身份和权限 | |
4 | login_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 上次登录时间: |
5 | phone | varchar | 11 | 0 | Y | N | 手机号码:[0,11]用户的手机号码,用于找回密码时或登录时 | |
6 | phone_state | smallint | 5 | 0 | N | N | 0 | 手机认证:[0,1](0未认证|1审核中|2已认证) |
7 | username | varchar | 16 | 0 | N | N | 用户名:[0,16]用户登录时所用的账户名称 | |
8 | nickname | varchar | 16 | 0 | Y | N | 昵称:[0,16] | |
9 | password | varchar | 64 | 0 | N | N | 密码:[0,32]用户登录所需的密码,由6-16位数字或英文组成 | |
10 | | varchar | 64 | 0 | Y | N | 邮箱:[0,64]用户的邮箱,用于找回密码时或登录时 | |
11 | email_state | smallint | 5 | 0 | N | N | 0 | 邮箱认证:[0,1](0未认证|1审核中|2已认证) |
12 | avatar | varchar | 255 | 0 | Y | N | 头像地址:[0,255] | |
13 | open_id | varchar | 255 | 0 | Y | N | 针对获取用户信息字段 | |
14 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
15 | vip_level | varchar | 255 | 0 | Y | N | 会员等级 | |
16 | vip_discount | double | 11 | 2 | Y | N | 0.00 | 会员折扣 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | group_id | mediumint | 8 | 0 | N | Y | 用户组ID:[0,8388607] | |
2 | display | smallint | 5 | 0 | N | N | 100 | 显示顺序:[0,1000] |
3 | name | varchar | 16 | 0 | N | N | 名称:[0,16] | |
4 | description | varchar | 255 | 0 | Y | N | 描述:[0,255]描述该用户组的特点或权限范围 | |
5 | source_table | varchar | 255 | 0 | Y | N | 来源表: | |
6 | source_field | varchar | 255 | 0 | Y | N | 来源字段: | |
7 | source_id | int | 10 | 0 | N | N | 0 | 来源ID: |
8 | register | smallint | 5 | 0 | Y | N | 0 | 注册位置: |
9 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
10 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
第4章 关键模块的设计与实现
管理员、用户在登录界面输入账号+密码,完成验证,点击“登录”按钮,系统在用户数据库表中会对管理员、用户的账号进行匹配,账号+密码正确的话,就会登录到系统中各个用户的主管理界面,否则提示对应的信息,返回到登录的界面,其主界面展示如下图4.1所示。

图4.1 登录界面图
登录代码如下:
public Map<String, Object> login(@RequestBody Map<String, String> data, HttpServletRequest httpServletRequest) {
log.info("[执行登录接口]");
String username = data.get("username");
String email = data.get("email");
String phone = data.get("phone");
String password = data.get("password");
List resultList = null;
QueryWrapper wrapper = new QueryWrapper<User>();
Map<String, String> map = new HashMap<>();
系统用户管理:管理员负责管理系统的用户,包括管理员和普通用户的登录、权限分配等操作。他们可以添加、编辑或删除用户账户,并设定相应的权限。界面如下图所示。

图5-2用户管理界面图
系统用户添加代码:
@RequestMapping("/get_list")
public Map<String, Object> getList(HttpServletRequest request) {
Map<String, Object> map = service.selectToPage(service.readQuery(request), service.readConfig(request));
return success(map);
}
管理员可以浏览和管理用户的学生信息,包括学生的姓名、学号、学校、专业等,以保证用户的身份真实性和交易的安全性。。界面如下图所示。

图4.3 学生信息管理界面图
管理员可以查看和管理用户发布的求购物品信息,包括审核发布的求购信息、下架不合规或失效的求购信息等。界面如下图所示。

图4.4 求购物品管理界面图
管理员可以管理平台的物品类型,包括添加、编辑和删除物品分类,以确保平台分类的准确性和有效性。界面如下图所示。

图4.5物品类型管理界面图
管理员可以管理用户的购买订单,包括查看订单详情、确认订单状态、处理用户的投诉和退款申请等。界面如下图所示。

图4.6购买订单管理界面图
通过前面章节的介绍,我们可以看到二手交易平台已经完成了,但是能不能投入使用还是未知,因为在每个项目正式使用之前必须对开发的项目进行测试,如果不进行测试一旦投入使用可能会出现很多未可知的问题,比如使用人数太多导致系统瘫痪,比如某一功能存在bug信息填写错误等,这些错误将给使用者带来很多的困扰,甚至造成更大的损失,因此测试是项目投入使用的最后一步,为用户提供一个运行顺畅、完美的项目也就是我们进行最后测试的目的。
用户登录功能测试:
表5.1 用户登录功能测试表
测试名称 | 测试功能 | 操作过程 | 预期结果 | 测试结果 |
用户登录模块测试 | 用户登录成功的情况 | 点击前登录界面输入账号和密码分别输入admin和admin后点击“登录”按钮。 | 登录成功并调整到用户界面 | 正确 |
二手物品添加功能测试:
表5.2 二手物品添加功能测试表
测试名称 | 测试功能 | 操作过程 | 预期结果 | 测试结果 |
二手物品添加模块测试 | 二手物品添加成功的情况 | 在二手物品的页面中将点击添加,输入二手物品相关信息,输入正确的信息后然后点击“提交”按钮。 | 提示添加成功 | 正确 |
二手物品添加模块测试 | 二手物品添加失败的情况 | 在二手物品页面中不填写的商品数量,其他信息正常输入“提交”按钮。 | 提示“添加失败,信息不能为空” | 正确 |
查询网站公告功能模块测试:
表5.3 查询网站公告功能测试表
测试名称 | 测试功能 | 操作过程 | 预期结果 | 测试结果 |
查询网站公告功能测试 | 查询成功的情况 | 在网站公告界面输入网站公告名称进行查询 | 查询成功 | 正确 |
学生信息添加测试:
表5.4 学生信息添加添加功能测试表
测试名称 | 测试功能 | 操作过程 | 预期结果 | 测试结果 |
学生信息添加添加模块测试 | 学生信息添加添加成功的情况 | 在学生信息添加添加管理的页面中,输入二手物品,输入正确的信息后然后点击“提交”按钮。 | 提示添加成功 | 正确 |
学生信息添加添加模块测试 | 学生信息添加添加失败的情况 | 在学生信息添加页面中不填写入库数量,其他信息正常输入“提交”按钮。 | 提示“添加失败,信息不能为空” | 正确 |
通过编写二手交易平台的测试用例,已经检测完毕用户的登录模块、二手物品添加模块、查询网站公告模块、学生信息添加模块的功能测试,在对以上功能得测试过程中,发现了系统中的很多漏送并进行了完善,经过多人在线进行测试,系统完全可以正常运行,当然在后期的维护中系统将不断完善。
在开发二手交易平台之前我胸有成竹,觉得很简单,但在实际的开发中我发现了自身的很多问题,许多编程思想和方法都还没有掌握牢靠,比如Bootsatrp、Jquery、AJAX 、SSM、mybeatis等许多Java Web开发技术,通过开发这个二手交易平台我成长了很多,懂得了做什么事情都要脚踏实地,不能眼高手低,在本次二手交易平台的开发中我逐渐掌握逐渐熟悉的技术。
同时,在本次项目中我也暴露了诸多问题。对于Java的编程知识有所欠缺,环境配置和算法上出现诸多问题,时常导致项目运行出错,或者目标的实现有问题。或者实现想法时算法未优化,使得代码冗长,程序运行不顺畅。
[1]孙丽,王皓,戴璐,等.大学校园二手交易平台构建与运营——以E大学“花梨闲转”微信小程序为例[J].科技与创新,2024,(04):12-16.DOI:10.15913/j.cnki.kjycx.2024.04.003.
[2]蒙金蓝,黄远香,高梦婷,等.废品收购嵌入校园二手交易平台的路径探究[J].中国市场,2024,(05):137-141.DOI:10.13939/j.cnki.zgsc.2024.05.032.
[3]唐瑛.服务设计思维下校园二手书籍交易平台设计研究[J].大众文艺,2023,(23):13-15.DOI:10.20112/j.cnki.ISSN1007-5828.2023.23.005.
[4]殷梅雨,肖月,周慧珍.基于“互联网+”的校园二手交易平台发展对策研究[J].现代商贸工业,2023,44(23):23-25.DOI:10.19311/j.cnki.1672-3198.2023.23.008.
[5]胡佳静.基于React Native的校园二手交易平台的设计与实现[J].电脑知识与技术,2023,19(25):42-44.DOI:10.14004/j.cnki.ckt.2023.1385.
[6]李顺,康雄杰.当前经济背景下校园二手交易平台的构建——以邵阳学院为例[J].财富时代,2023,(05):88-90.
[7]林梦瑶,武光华,田爽,等.基于二手书交易平台校园纸质垃圾回收利用研究[J].再生资源与循环经济,2023,16(02):25-27.
[8]曹振兴,刘亚娇,邹敏,等.绿色校园背景下的校园二手交易平台[J].数字通信世界,2023,(01):75-77.
[9]高耀,许诺,李博,等.基于Web的新型校园二手交易平台实践研究——以“校易集市”为例[J].中国商论,2023,(01):130-132.DOI:10.19699/j.cnki.issn2096-0298.2023.01.130.
[10]张柱,宋存进,蒋乐,等.基于微信小程序校园二手交易平台设计与开发[J].电脑编程技巧与维护,2022,(12):59-61+142.DOI:10.16184/j.cnki.comprg.2022.12.035.
[11]张翼飞,郭宇斌,高斌梁.关于大学生App的开发与现实意义——以校园二手交易平台“拾物”App为例[J].老字号品牌营销,2022,(22):88-90.
[12]陈怡婧,郑晓溪,李芳.基于微信云开发的校园二手交易平台小程序的设计与实现[J].电脑知识与技术,2022,18(32):51-54.DOI:10.14004/j.cnki.ckt.2022.1964.
[13]潘俊任,洪小萍.校园二手交易平台探析——以广西民族师范学院为例[J].现代商贸工业,2022,43(21):75-77.DOI:10.19311/j.cnki.1672-3198.2022.21.031.
[14]赵冰,刘星含,杨泰森,等.基于微信小程序的校园二手闲置物品交易平台的设计与实现[J].电脑知识与技术,2022,18(21):64-66.DOI:10.14004/j.cnki.ckt.2022.1254.
[15]魏海芝,易寒茹,杨娇.基于闲鱼等交易平台的校园二手市场现状及前景调研报告[J].商场现代化,2022,(09):43-45.DOI:10.14013/j.cnki.scxdh.2022.09.048.
[16]苏琛铠.大学校园二手物品交易平台构建的设想[J].老字号品牌营销,2022,(07):87-89.
[17]赵明,贲祺舒,吕怡.基于微信小程序的高校校园二手物品交易平台的设计与实现[J].科技与创新,2022,(07):55-58.DOI:10.15913/j.cnki.kjycx.2022.07.016.
[18]肖佳欣,李雪,曲嵬琦.基于新媒体营销搭建校园二手交易平台的策略研究[J].营销界,2022,(01):35-37.
[19]李俊,马琦,朱嘉灵,等.新型大学校园二手交易平台构建研究[J].物流工程与管理,2021,43(12):145-148.
[20]Pan T ,Ying Z .Thoughts on the Construction of Thesecond-hand Trading Platform of WeChat Small Program Campus[J].Academic Journal of Engineering and Technology Science,2019,2(1):
结束语
至此论文结束,感谢您的阅读。在此我要特别的感谢我的导师,虽然我在实习期间很忙,论文撰写的时候经常是停停改改,但是我的导师依旧十分的负责,时不时的询问我的任务进展情况,跟进我的论文进度,在指导老师的帮助下,我逐步完成了自己的论文和程序,从导师身上也学习到很多知识和经验,这些知识和经验令我受益匪浅。同时我也从导师身上看到了自己的不足,不论是在技术层面上还是在对待工作的态度上,导师如同明镜一般照出了我的缺点我的不足。此外,我还要感谢在我实习期间在论文和程序上帮助过我的同学和社会人士,此前我对于SSM框架方面的一些知识还不了解,是他们在我编写程序过程中给了我很多的启发和感想,也帮助了我对于程序的调试和检测。没有他们我是不能顺利完成本次毕业设计的。至此,我的毕业设计就花上了一个圆满的句号了。
免费领取项目源码,请关注❥点赞收藏并私信博主,谢谢~