SSM校园志愿服务信息系统的设计与实现-计算机毕业设计源码97697

摘 要

随着社会的进步和信息技术的发展,越来越多的学校开始重视志愿服务工作,通过组织各种志愿服务活动,让学生更好地了解社会、服务社会。然而,在实际操作中,志愿服务的组织和管理面临着诸多问题,如志愿者信息管理不规范、志愿服务信息发布不及时、志愿服务活动的组织难度大等。为了解决这些问题,校园志愿服务信息系统应运而生。

本文提出的校园志愿服务信息系统采用SSM框架进行开发,SSM框架是一个轻量级的Java Web开发框架,包括Spring、Spring MVC和MyBatis三个部分,通过使用SSM框架,可以提高系统的开发效率和运行效率。采用MySQL数据库对系统数据进行存储和管理,数据库设计主要包括用户信息表、活动信息表、报名申请信息表等,通过合理的数据库设计,可以保证数据的完整性和一致性。设计开发此系统旨在为校园志愿活动组织提供一个方便、快捷、信息化的服务系统。

关键词:志愿服务;信息系统;SSM;MySQL数据库

Abstract

With the progress of society and the development of information technology, more and more schools are paying attention to volunteer service work. By organizing various volunteer service activities, students can better understand and serve society. However, in practical operation, the organization and management of volunteer services face many problems, such as non-standard volunteer information management, untimely release of volunteer service information, and high difficulty in organizing volunteer service activities. In order to solve these problems, the campus volunteer service information system has emerged.

The campus volunteer service information system proposed in this article is developed using the SSM framework, which is a lightweight Java web development framework that includes Spring, Spring MVC, and MyBatis. By using the SSM framework, the development and operational efficiency of the system can be improved. Using MySQL database to store and manage system data, the database design mainly includes user information table, activity information table, registration application information table, etc. Through reasonable database design, the integrity and consistency of data can be ensured. The design and development of this system aims to provide a convenient, fast, and information-based service system for campus volunteer activity organizations.

Keywords: Volunteer service; Information systems; SSM; MySQL database

目  录

第1章 绪论

1.1 研究背景

1.2 研究意义

1.3 研究方法

1.4论文结构与章节安排

第2章 系统分析

2.1 可行性分析

2.1.1 技术可行性分析

2.1.2 经济可行性分析

2.1.3 社会可行性分析

2.2 系统功能分析

2.2.1 系统功能分析 3

2.2.2 系统非功能分析

2.3系统用例分析

2.4系统流程分析

第3章 系统设计

3.1 系统架构设计

3.2 系统功能模块设计

3.2.1 整体功能模块设计

3.2.2用户模块设计

3.2.3志愿活动信息模块设计

3.2.4报名申请模块设计

3.3数据库设计

3.3.1 数据库概念结构设计

3.3.2逻辑结构设计

3.1 表access_token (登陆访问时长)

3.2 表activity_classification (活动分类)

3.3 表article (文章:用于内容管理系统的文章)

3.4 表article_type (文章分类)

3.5 表auth (用户权限管理)

3.6 表collect (收藏)

3.7 表comment (评论)

3.8 表complaint_feedback (投诉反馈)

3.9 表hits (用户点击)

3.10 表notice (公告)

3.11 表praise (点赞)

3.12 表registered_users (注册用户)

3.13 表registration_application (报名申请)

3.14 表sensitive_vocabulary (敏感词汇)

3.15 表slides (轮播图)

3.16 表upload (文件上传)

3.17 表user (用户账户:用于保存用户登录信息)

3.18 表user_group (用户组:用于用户前端身份和鉴权)

3.19 表volunteer_activities (志愿活动)

第4章 系统实现

4.1 注册用户功能模块

4.1.1 系统首页界面

4.2.2 用户登录界面

4.2.3 我的账户界面 23

4.2.4 网站公告界面 23

4.2.5 活动新闻界面 23

4.2.6 志愿活动界面 24

4.2.7 投诉反馈界面 24

4.2.8 个人中心界面 25

4.2 管理员功能模块

4.2.1 公共管理界面

4.2.2 用户管理界面

4.2.3 资讯管理界面

4.2.4 活动分类界面

4.2.5 志愿活动界面

4.2.6 名申请界面

4.2.7 投诉反馈界面

第5章 系统测试

5.1 测试的目的

5.2 测试用例 

5.3 测试结果

第6章 结论

参考文献

致谢

  1. 绪论
    1. 研究背景

随着社会的进步和信息技术的发展,人们的生活和学习环境越来越依赖于计算机技术和网络通信技术。特别是在大学校园中,学生的生活和学习更加离不开计算机和网络的支持。在校园志愿服务方面,随着社会的进步和人们生活水平的提高,越来越多的学生开始关注和参与到志愿服务中来。然而,由于传统的志愿服务管理方式缺乏有效的信息支持,导致志愿服务的组织和管理存在很多问题,如志愿服务信息不对称、志愿服务资源分配不均等等。因此,如何利用计算机技术来提高校园志愿服务的管理效率和服务质量,成为了当今大学校园志愿服务工作面临的重要课题。

SSM框架是一种基于Java的轻量级Web应用程序框架,它由Spring、Spring MVC和MyBatis三个框架组成。其中,Spring框架提供了依赖注入和面向切面编程等功能,可以帮助开发者构建更加灵活和可扩展的应用程序;Spring MVC框架则负责处理Web请求和响应,提供了更加高效和安全的Web应用程序开发方式;MyBatis框架则是一个持久层框架,它可以方便地将Java对象映射到数据库中的记录,从而实现了Java对象和数据库记录之间的映射。利用SSM技术开发设计一个校园志愿服务信息系统可以解决传统志愿服务管理存在的问题,实现校园志愿服务信息管理的信息化、规范化。

    1. 研究意义

首先,可以提高志愿服务效率:校园志愿服务信息系统可以帮助志愿者组织更好地管理和协调志愿服务活动。通过信息化手段,管理员可以快速地发布志愿服务活动信息,用户可以在线查看志愿活动信息并在线完成活动报名申请的提交,管理员可以实时地审核报名申请、管理志愿者人数、活动进度等信息。这大大提高了志愿服务的效率,使得志愿服务活动可以更加有序、高效地进行。

其次,可以推动校园志愿服务的开展:校园志愿服务信息系统可以更方便更及时的宣传志愿服务活动信息。通过系统,管理员可以发布志愿服务活动的照片、视频等信息,让更多的人了解志愿服务活动内容,从而推动校园志愿服务活动的开展。

最后,可以提升志愿服务质量:通过系统,用户可以对活动新闻、志愿服务活动发表评论,还可以提交投诉反馈意见,管理员可以根据用户投诉反馈意见不断改进志愿服务工作,提升志愿服务质量。

    1. 研究方法

首先,通过引擎搜索或者查阅相关文献资料,了解了本系统开发的背景以及设计系统的意义所在,收集用户需求信息。

其次,在开发工具上,选用SSM框架来设计开发本系统,MySQL作为设计数据库的工具。即利用java语言实现用户界面,并同数据库连接起来实现完整的通信功能。

再次,设计出系统大致的功能模块。主要从方便用户和管理员的角度进行分析,明确该系统应该具有的功能。

最后,完成系统测试,通过用例测试发现存在的问题并找到解决的方案。利用现有的开发平台,结合自己所学的知识,在老师的指导帮助下来完成该设计,确保系统运行的可靠性和稳定性。

1.4论文结构与章节安排

论文将分层次经行编排,除去论文摘要致谢文献参考部分,正文部分还会对系统需求做出分析,以及阐述大体的设计和实现的功能,最后罗列部分调测记录,论文主要架构如下:

第一章:绪论。第一章主要介绍了课题研究的背景,意义和本文的研究内容与主要章节安排。

第二章:系统分析。第二章主要从系统的用户、功能等方面进行需求分析。

第三章:系统设计。第三章主要对系统框架、系统功能模块、数据库进行设计。

第四章:系统实现。第四章主要介绍了系统框架搭建、系统界面的实现。

第五章:系统测试。第五章主要对系统的部分界面进行测试并对主要功能进行测试

第六章:总结。

  1. 系统分析
    1. 可行性分析
      1. 技术可行性分析

SSM是一种基于Java的成熟框架,广泛应用于电子商务领域。采用SSM框架开发有助于提高系统的可拓展性和可维护性,MySQL数据库具有强大的数据处理能力,能够有效的存储和管理系统中的各项数据,因此从技术上来说是可行的。

      1. 经济可行性分析

SSM框架是开源的,拥有大量的社区支持和丰富的学习资源。使用SSM框架进行开发可以降低开发成本,缩短开发周期。此外,SSM框架具备良好的性能和稳定性,可以降低系统的运行成本和维护成本。因此从经济层面来说是可行的。

      1. 社会可行性分析

校园志愿服务信息系统可以有效整合校园志愿服务资源,提高志愿服务的效率和质量,有助于推动校园志愿服务工作的开展。此外,该系统还可以为志愿者提供更加便捷服务,如在线提交报名申请、查看申请审核进度和投诉反馈意见等,从而提高志愿者的参与度和满意度。因此,校园志愿服务信息系统具有很好的社会可行性。

    1. 系统功能分析

2.2.1 功能性分析

按照校园志愿服务信息系统的角色,主要划分为注册用户和管理员两大功能模块,具体内容如下。

1.注册用户模块

1.首页:用户可以查看首页展示的轮播图、活动新闻、活动推荐信息。

2.注册登录:用户可以通过注册成为系统用户,注册后用账号密码进行登录。

3 .网站公告:用户可以查看网站公告列表信息,点击某一公告可以查看公告详情。

4.动新闻:用户可以查看活动新闻列表中的某一新闻的信息详情并可以进行点赞、收藏和发表评论操作。

5.志愿活动:用户可以查看志愿活动列表信息中的某一活动的详情并可以进行点赞、收藏和发表评论操作,可以在线完成活动报名申请。

6.投诉反馈:用户可以填写相关投诉反馈信息后点“提交”即可完成反馈信息的提交。

7.我的:用户可以修改个人信息和登录密码,可以查看和管理报名申请、投诉反馈和收藏信息等。

2.管理员模块

1.网站首页:可管理员可以查看网站首页信息。

2.公共管理:管理员可以对系统轮播图、网站公告进行查询、重置、新增和删除操作。

3.系统用户:管理员可以查看某一用户详情,可以对系统用户进行查询、重置、添加和删除操作。

4.资讯管理:管理员可以对新闻分类信息进行添加,可以查看活动新闻列表中的某一活动的详情和评论信息,可以对系统资讯进行查询、重置、新增和删除操作。

5.活动分类:管理员可以查看活动分类列表中的某一活动的详情和评论,可以对活动分类信息进行查询、重置、新增和删除操作。

6.志愿活动:管理员可以查看志愿活动列表中的某一活动信息详情并进行审核和回复,可以对志愿活动信息进行查询、重置、新增和删除操作。

7.报名申请:管理员可以查看报名申请列表中的某一报名申请信息详情并进行审核和回复,可以对报名申请信息进行查询、重置、新增和删除操作。

8.投诉反馈:管理员可以查看投诉反馈列表中的某一投诉反馈信息详情并回复,可以对投诉反馈信息进行查询、重置、新增和删除操作。

9.个人信息:管理员可以查看和修改个人信息。

10.密码修改:管理员可以修改个人登录密码。

2.2.2 非功能性分析

SSM校园志愿服务信息系统的非功能性需求比如系统的安全性怎么样,可靠性怎么样,性能怎么样,可拓展性怎么样等。具体可以表示在如下2-1表格中:

2-1SSM校园志愿服务信息系统非功能需求表

安全性

主要指SSM校园志愿服务信息系统数据库的安装,数据库的使用和密码的设定必须合乎规范。

可靠性

可靠性是指SSM校园志愿服务信息系统能够安装用户的指示进行操作,经过测试,可靠性90%以上。

性能

性能是影响SSM校园志愿服务信息系统占据市场的必要条件,所以性能最好要佳才好。

可扩展性

比如数据库预留多个属性,比如接口的使用等确保了系统的非功能性需求。

易用性

用户只要跟着SSM校园志愿服务信息系统的页面展示内容进行操作,就可以了。

可维护性

SSM校园志愿服务信息系统开发的可维护性是非常重要的,经过测试,可维护性没有问题

2.3系统用例分析

通过2.2功能的分析,本系统用户主要分为注册用户和管理员用户,系统用户角色用例图分别如下图2-1,2-2所示:

注册用户用例图如下图2-1所示。

图2-1 注册用户用例图

管理员用例图如下图2-2所示。

图2-2 管理员用例图

2.4系统流程分析

系统流程是用一些特定的符和线条来进行演示用户在使用系统时的过程,在进行系统分析的时候,系统流程可以帮助开发人员更好的理解业务,发现错误,完善系统。

2.4.1 数据增加流程

用户成功登入系统后能够实现增加数据的操作,增加数据的编号是特定的,系统生成,用户不能随意填写,除了编号以外,其他增加信息用户自己填写,填写后的信息经过系统验证,验证合法通过就显示增加数据成功了,相反的话,就没有增加成功,数据新增数流程图如下图2-3所示

图2-3 数据新增流程图

2.4.2数据修改流程

数据修改时的流程和上面介绍的数据新增的流程相似数据修改的流程如下图2-4所示。

图2-4 数据修改流程图

2.4.3数据删除流程

如果系统里面存在一些没用的数据,相关的管理人员还可以对这些数据进行删除,数据删除流程如下图2-5所示。

图2-5数据删除流程图

  1. 系统设计

本章主要讨论的内容包括校园志愿服务信息系统的功能模块设计、数据库系统设计。

3.1 系统架构设计

本校园志愿服务信息系统从架构上分为三层:表现层(UI)、业务逻辑层(BLL)以及数据层(DL)。

图3-1校园志愿服务信息系统架构设计图

表现层(UI):又称UI层,主要完成本校园志愿服务信息系统的UI交互功能,一个良好的UI可以打打提高用户的用户体验,增强用户使用本校园志愿服务信息系统时的舒适度。UI的界面设计也要适应不同版本的校园志愿服务信息系统以及不同尺寸的分辨率,以做到良好的兼容性。UI交互功能要求合理,用户进行交互操作时必须要得到与之相符的交互结果,这就要求表现层要与业务逻辑层进行良好的对接。

业务逻辑层(BLL):主要完成本校园志愿服务信息系统的数据处理功能。用户从表现层传输过来的数据经过业务逻辑层进行处理交付给数据层,系统从数据层读取的数据经过业务逻辑层进行处理交付给表现层。

数据层(DL):由于本校园志愿服务信息系统的数据是放在服务端的MySQL数据库中,因此本属于服务层的部分可以直接整合在业务逻辑层中,所以数据层中只有数据库,其主要完成本校园志愿服务信息系统的数据存储和管理功能。

3.2 系统功能模块设计

3.2.1 整体功能模块设计

在上一章节中主要对系统的功能性需求和非功能性需求进行分析,并且根据需求分析了本校园志愿服务信息系统中的用例。那么接下来就要开始对校园志愿服务信息系统主要功能进行设计。校园志愿服务信息系统根据前面章节的需求分析得出,其总体功能模块图如下图4-2所示。

图3-2 SSM校园志愿服务信息系统功能模块图

3.2.2用户模块设计

管理员能够实现对系统用户查询、新增、重置和删除操作,用户模块结构图如下图:

图3-3用户模块结构图

3.2.3志愿活动信息模块设计

校园志愿服务信息系统是中需要存储不少志愿活动信息,其模块功能结构,具体的结构图如下:

图3-4志愿活动信息模块结构图

3.2.4报名申请模块设计

校园志愿服务信息系统系统需要展示相关报名申请信息,其模块功能结构,具体的结构图如下:

图3-5报名申请模块结构图

3.3数据库设计

数据库设计一般包括需求分析、概念模型设计、数据库表建立三大过程,其中需求分析前面章节已经阐述,概念模型设计有概念模型和逻辑结构设计两部分。

3.3.1 数据库概念结构设计

下面是整个校园志愿服务信息系统中主要的数据库表总E-R实体关系图。

图4-3校园志愿服务信息系统E-R图

3.3.2逻辑结构设计

数据库是校园志愿服务信息系统的数据处理的基础,也是为界面数据的展示与存储的关键。校园志愿服务信息系统的数据库表如下。

    1. 表access_token (登陆访问时长)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

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. 表activity_classification (活动分类)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

activity_classification_id

int

10

0

N

Y

活动分类ID

2

activity_type

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. 表article (文章:用于内容管理系统的文章)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

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. 表article_type (文章分类)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

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 (用户权限管理)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

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 (收藏)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

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 (评论)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

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. 表complaint_feedback (投诉反馈)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

complaint_feedback_id

int

10

0

N

Y

投诉反馈ID

2

feedback_to_users

int

10

0

Y

N

0

反馈用户

3

name

varchar

64

0

Y

N

姓名

4

telephone

varchar

64

0

Y

N

电话

5

theme

varchar

64

0

Y

N

主题

6

related_pictures

varchar

255

0

Y

N

相关图片

7

feedback_content

text

65535

0

Y

N

反馈内容

8

examine_state

varchar

16

0

N

N

未审核

审核状态

9

examine_reply

varchar

16

0

Y

N

审核回复

10

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

11

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

    1. 表hits (用户点击)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

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. 表notice (公告)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

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 (点赞)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

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. 表registered_users (注册用户)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

registered_users_id

int

10

0

N

Y

注册用户ID

2

name

varchar

64

0

Y

N

姓名

3

gender

varchar

64

0

Y

N

性别

4

telephone

varchar

64

0

Y

N

电话

5

examine_state

varchar

16

0

N

N

已通过

审核状态

6

user_id

int

10

0

N

N

0

用户ID

7

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

8

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

    1. 表registration_application (报名申请)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

registration_application_id

int

10

0

N

Y

报名申请ID

2

activity_number

varchar

64

0

Y

N

活动编号

3

activity_name

varchar

64

0

Y

N

活动名称

4

activity_time

varchar

64

0

Y

N

活动时间

5

activity_type

varchar

64

0

Y

N

活动类型

6

event_location

varchar

64

0

Y

N

活动地点

7

applying_for_users

int

10

0

Y

N

0

申请用户

8

name

varchar

64

0

Y

N

姓名

9

telephone

varchar

64

0

Y

N

电话

10

introduction_to_specialties

text

65535

0

Y

N

特长介绍

11

registration_remarks

text

65535

0

Y

N

报名备注

12

examine_state

varchar

16

0

N

N

未审核

审核状态

13

examine_reply

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. 表sensitive_vocabulary (敏感词汇)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

sensitive_vocabulary_id

int

10

0

N

Y

敏感词汇ID

2

sensitive_vocabulary

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. 表slides (轮播图)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

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. 表upload (文件上传)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

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 (用户账户:用于保存用户登录信息)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

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]用户登录所需的密码,由4-16位数字或英文组成

10

email

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

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

创建时间:

    1. 表user_group (用户组:用于用户前端身份和鉴权)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

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

更新时间:

    1. 表volunteer_activities (志愿活动)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

volunteer_activities_id

int

10

0

N

Y

志愿活动ID

2

activity_number

varchar

64

0

Y

N

活动编号

3

activity_name

varchar

64

0

Y

N

活动名称

4

cover

varchar

255

0

Y

N

封面

5

activity_type

varchar

64

0

Y

N

活动类型

6

contact_phone_number

varchar

64

0

Y

N

联系电话

7

activity_time

varchar

64

0

Y

N

活动时间

8

event_location

varchar

64

0

Y

N

活动地点

9

activity_content

text

65535

0

Y

N

活动内容

10

event_details

longtext

2147483647

0

Y

N

活动详情

11

hits

int

10

0

N

N

0

点击数

12

praise_len

int

10

0

N

N

0

点赞数

13

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

14

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

  1. 系统实现
    1. 注册用户功能模块

4.1.1 首页界面

系统首页以上中下布局,正上方是系统的导航栏,中间是轮播图、下面是活动新闻、活动推荐信息。其界面如下图4-1所示:

图4-1 首页界面图

4.1.2用户登录界面

已注册用户点击首页右上方的“登录”按钮进入登录页面输入用户名和密码并点击“登录”按钮,系统会验证输入的信息与数据库中当前保存的用户信息是否一致,验证通过后即可完成登录;否则将会提示相应错误信息。其界面如下图4-2所示:

图4-2 用户登录界面图

登录代码如下:

    @PostMapping("login")

    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<>();

4.1.3 我的账户界面

点击“我的”下拉按钮中“我的账户”,用户可以查看和修改个人资料,主要包括头像、昵称和登录密码。其界面如下图4-3所示:

图4-3 我的账户界面图

4.1.4 网站公告界面

用户可以查看网站公告列表信息,点击某一公告可以查看公告详情。其界面如下图4-4所示:

图4-4网站公告界面图

4.1.5活动新闻界面

用户可以查看活动新闻列表中的某一新闻的信息详情并可以进行点赞、收藏和发表评论操作。其界面如下图4-5所示:

图4-5 活动新闻界面图

4.1.6志愿活动界面

用户可以查看志愿活动列表信息中的某一活动详情并可以进行点赞、收藏和发表评论操作;点击详情下方的“申请”进入页面填写相关信息后点击“提交”即可完成志愿活动的报名申请。其界面如下图4-6所示。

图4-6志愿活动界面图

4.1.7投诉反馈界面

点击首页导航栏的“投诉反馈”进入页面填写相关信息后点“提交”即可完成投诉反馈信息的提交。其界面如下图4-7所示。

图4-7 投诉反馈界面图

4.1.8个人中心界面

点击右上角“我的”下拉按钮“个人中心”,进入个人中心页面可以查看个人首页、报名申请、投诉反馈和收藏信息。其界面如下图4-8所示。

图4-8 个人中心界面图

    1. 管理员功能模块
      1. 公共管理界面

管理员可以对系统轮播图、网站公告进行查询、重置、新增和删除操作。其界面如下图4-9所示:

图4-9公共管理界面图

新增的关键代码如下:

    @PostMapping("/add")

    @Transactional

    public Map<String, Object> add(HttpServletRequest request) throws IOException {

        service.insert(service.readBody(request.getReader()));

        return success(1);

    }

    @Transactional

    public Map<String, Object> addMap(Map<String,Object> map){

        service.insert(map);

        return success(1);

    }

删除的关键代码如下:

   @RequestMapping(value = "/del")

    @Transactional

    public Map<String, Object> del(HttpServletRequest request) {

        service.delete(service.readQuery(request), service.readConfig(request));

        return success(1);

    }

查询的关键代码如下:

 @RequestMapping("/get_obj")

    public Map<String, Object> obj(HttpServletRequest request) {

        List resultList = service.selectBaseList(service.select(service.readQuery(request), service.readConfig(request)));

        if (resultList.size() > 0) {

            JSONObject jsonObject = new JSONObject();

            jsonObject.put("obj",resultList.get(0));

            return success(jsonObject);

        } else {

            return success(null);

        }

}

      1. 用户管理界面

管理员可以查看某一用户详情,可以对系统用户进行查询、重置、新增和删除操作。其界面如下图4-10所示:

图4-10用户管理界面图

      1. 资讯管理界面

管理员可以对新闻分类信息进行添加,可以查看活动新闻列表中的某一活动的详情和评论信息,可以对系统资讯进行查询、重置、新增和删除操作。其界面如下图4-11所示:

图4-11资讯管理界面图

图片上传的关键代码如下:

   @PostMapping("/upload")

    public Map<String, Object> upload(@RequestParam(value = "file",required=false) MultipartFile file,HttpServletRequest request) {

        log.info("进入方法");

        if (file.isEmpty()) {

            return error(30000, "没有选择文件");

        }

        try {

            //判断有没路径,没有则创建

            String filePath = request.getSession().getServletContext().getRealPath("\\") +"upload\\";

            File targetDir = new File(filePath);

            if (!targetDir.exists() && !targetDir.isDirectory()) {

                if (targetDir.mkdirs()) {

                    log.info("创建目录成功");

                } else {

                    log.error("创建目录失败");

                }

            }

            String fileName = file.getOriginalFilename();

            int lastIndexOf = fileName.lastIndexOf(".");

            String suffix = fileName.substring(lastIndexOf);

            fileName = IdWorker.getId()+suffix;

            File dest = new File(filePath + fileName);

            log.info("文件路径:{}", dest.getPath());

            log.info("文件名:{}", dest.getName());

            file.transferTo(dest);

            JSONObject jsonObject = new JSONObject();

            jsonObject.put("url", "/api/upload/" + fileName);

            return success(jsonObject);

        } catch (IOException e) {

            log.info("上传失败:{}", e.getMessage());

        }

        return error(30000, "上传失败");

}

      1. 活动分类界面

管理员可以查看活动分类列表中的某一活动的详情和评论,可以对活动分类信息进行查询、重置、新增和删除操作。其界面如下图4-12所示:

图4-12活动分类界面图

      1. 志愿活动界面

管理员可以查看志愿活动列表中的某一活动信息详情并进行审核和回复,可以对志愿活动信息进行查询、重置、新增和删除操作。其界面如下图4-13所示:

图4-13志愿活动界面图

      1. 名申请界面

管理员可以查看报名申请列表中的某一报名申请信息详情并进行审核和回复,可以对报名申请信息进行查询、重置、新增和删除操作。其界面如下图4-14所示:

图4-14报名申请界面图

      1. 投诉反馈界面

管理员可以查看投诉反馈列表中的某一投诉反馈信息详情并回复,可以对投诉反馈信息进行查询、重置、新增和删除操作。其界面如下图4-15所示:

图4-15投诉反馈界面图

  1. 系统测试
    1. 测试的目的

系统开发的最后一个阶段就是系统测试,系统测试对软件的开发其实是非常有必要的。因为没什么系统一经开发出来就尽善尽美,再厉害的系统开发工程师也会在系统开发的时候出现纰漏,系统测试能够较好的改正一些bug,为后期系统的维护性提供很好的支持。通过系统测试,开发人员也可以建立自己对系统的信心,为后期的系统版本的更新提供支持。

    1. 测试用例 

系统测试包括:用户登录功能、活动新闻查看功能、轮播图信息添加、密码修改功能测试,分别如表5-1、5-2、5-3、5-4、所示:

登录测试用例如下表所示。

5-1 登录测试用例

用例名称

用户登录系统

目的

测试用户通过正确的用户名和密码可否登录功能

前提

未登录的情况下

测试流程

1) 进入登录页面

2) 输入正确的用户名和密码

预期结果

用户名和密码正确的时候,跳转到登录成功界面,反之则显示错误信息,提示重新输入

实际结果

实际结果与预期结果一致

活动新闻查看功能测试:

表5-2 活动新闻查看功能测试表

用例名称

活动新闻查看

目的

测试活动新闻查看功能

前提

用户正常登录

测试流程

点击首页导航栏的活动新闻

预期结果

可以查看到所有活动新闻信息

实际结果

实际结果与预期结果一致

管理员添加轮播图信息界面测试:

用例名称

轮播图信息新增测试用例

目的

测试轮播图信息新增功能

前提

管理员正常登录情况下

测试流程

1)管理员点击公共管理下方的轮播图,进入页面点击新增进入轮播图新增页面填写相关信息。

2)信息填写完毕后点击提交。

预期结果

确认提交以后,页面首页会显示新的轮播图信息 

实际结果

实际结果与预期结果一致

表5-3 管理员添加轮播图信息界面测试表

密码修改功能测试:

表5-4 密码修改功能测试表

用例名称

密码修改测试用例

目的

测试管理员密码修改功能

前提

管理员用户正常登录情况下

测试流程

1)输入原密码和修改密码。

2)点击确认进行提交。

预期结果

使用新的密码可以登录

实际结果

实际结果与预期结果一致

    1. 测试结果

通过编写房屋租赁管理系统的测试用例,已经检测完毕用户登录功能、活动新闻查看功能、轮播图信息添加、密码修改功能测试,通过这四大模块为校园志愿服务信息系统的后期推广运营提供了强有力的技术支撑。

结论

在开发校园志愿服务信息系统之前,我们需对用户的实际需求进行深度剖析。这不仅包括对系统的可行性研究,还包括对功能需求和其他需求的分析。在可行性分析阶段,我们从技术性和经济性等多个角度对系统实现的可能性进行了全面评估,结果表明,该系统的实施是可行的。

本文首先概述了校园志愿服务信息系统开发的背景及其意义,接着详细阐述了系统的具体业务需求,并根据这些需求对系统的结构以及功能模块进行设计。我们把这个系统划分为多个功能模块,每个模块都具有其独特的功能和作用。

在深入分析系统功能需求的过程中,我们对系统的总体架构和功能模块进行了深入研究,并选择了最适合的系统开发技术来完成各个模块的开发工作。系统开发完成后,我们进行了系统的测试。测试结果表明,该系统在功能和性能方面都满足了预期的要求,具有较好的稳定性和可靠性。

参考文献

[1]单厚信,刘舒心,程文远等.基于SSM架构的图书资料管理系统设计与实现[J].现代信息科技,2023,7(23):46-51.

[2]张敏.新时代大学生志愿服务高质量发展的价值、问题与路径——基于东莞理工学院大学生志愿服务工作的经验分析[J].黑龙江教育(高教研究与评估),2023,(12):29-31.

[3]Lizhi C ,Jiayi Z ,Yingjun Z , et al.Exploration and practice of humanistic education for medical students based on volunteerism.[J].Medical education online,2023,28(1):2182691-2182691.

[4]Sara A ,Laura G ,Simonetta S , et al.Cancer patients’ needs for volunteer services during Covid-19: a mixed-method exploratory study[J].BMC Psychology,2023,11(1):421-421.

[5]Seymour A ,N. M B ,Erica D , et al.IOP volunteerism: Acting as individuals, acting as a community[J].Industrial and Organizational Psychology,2023,16(4):438-442.

[6]樊有镇,杨梦婷.社会工作创新实践育人路径的行动探索——以武汉“晨曦公益”校社地三方共建大学生志愿服务为例[J].黑龙江生态工程职业学院学报,2023,36(06):96-101.

[7]哈尔滨工程大学哈军工纪念馆“流动中的纪念馆”志愿服务项目案例[J].中国博物馆,2023,(S1):56.

[8]丁珏.基于数据中台的佑康志愿服务平台设计与实现[J].数字技术与应用,2023,41(10):183-185.

[9]张婉璐,王雪超,徐曼.新时代大学生志愿服务精神文明建设的路径探析[J].国际公关,2023,(18):185-187.

[10]杨涵潇.“互联网+”背景下大学生志愿服务现状及实践路径研究[J].科技风,2023,(26):166-168.

[11]黄闰国,林春蕾,金盈盈.红色文化传承视域下中国校园志愿服务育人研究内容及演化分析[J].才智,2023,(17):48-51.

[12]冀星源.思想政治教育视域下大学生志愿服务现状及提升路径研究[D].重庆工商大学,2023.

[13]刘希玺.高校志愿服务促进校园文化建设探讨[J].西部素质教育,2022,8(19):102-105.

[14]郑春晓.浅析大学生志愿服务与校园文化静态统一及动态结合[J].边疆经济与文化,2022,(10):107-109.

[15]郭豪栋.新时代大学生志愿服务精神培育研究[D].东北石油大学,2021.

[16]周淼淼.高校大学生志愿服务实践路径探索[J].大众标准化,2021,(10):73-75.

[17]杨玲玲.黑龙江省大学生志愿服务发展对策研究[D].哈尔滨师范大学,2021.

[18]曹桂彬.习礼立人以礼导行——以志愿服务点亮文明言行的实践探索[J].四川教育,2021,(01):21-22.

[19]刘曦.构建志愿服务活动体系提升学生综合能力[J].北京教育(普教版),2020,(08):43.

[20]郭芳.大学生志愿服务精神现状及培育对策研究[D].河北大学,2020.

致谢

我首先要感谢我的论文指导老师。在论文的完成过程中,是在指导老师的精心指导下完成的。在论文的完成过程之中,导师对我的耐心地指导,提出了建设性意见给了我巨大的帮助,倾注了大量的心血。导师严谨的治学态度、一丝不苟的敬业精神、高水平的教学能力都给我树立了成功的典范,这对于我以后的生活和学习中都起到了积极的影响。

与此同时,我还要感谢我班的同学们对我的关怀和帮助,他们又是我的同学,又是我的朋友,同时也是我学习的榜样。正是由于大家给予我的大力支持才使我顺利地完成了大学学业,感谢在大学期间给予我帮助的所有老师和同学们。

最后,我还要感谢我的父母,你们的养育之恩我永远不会忘记,将来我也要用我的成绩回报你们。

免费领取项目源码,请关注❥点赞收藏并私信博主,谢谢~

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值