A037-基于SSM的高校社团管理系统(源码+数据库+部署文档+LW)

2.2 JSP简介

JSP在网页开发中有利于简化代码迁移过程,在电子商务中应用广泛。在实际应用过程中,我们可以直接对JSP的相关页面进行编写,随后就可以直接执行。执行过程中,可以直接利用浏览器对jsp发出请求。在接收到对应的请求之后,jsp服务器会进行针对性的识别。如果代码不存在就会直接利用Servlet的源代码来对其进行有针对性的转换处理,如果存在可以直接利用JSP的服务器对其是否存在修改问题进行确认和处理。在这种背景下,如果其中并不存在任何的修改或者是更新,那么就可以直接将代码进行编译处理,同时也可以在内存中对其进行有效的执行落实。在具体操作过程中,通常在对代码进行储存编译之后,其自身产生出的结果一般都会直接被返回到客户端中。虽然在第一次请求之后,就会产生出相对应的JSP文件编译,但是在与实际情况进行结合分析之后,JSP页面中的Web开发人员基本上都是第一个请求发出者。在这种背景下,用户在对JSP页边进行访问的时候,其实早就已经被编译,这样有利于促使访问效率得到有效提升。

2.3 mysql简介

数据库是存放数据的仓库的简称,数据库中的数据都是有规律结构的,相同类型的数据是会被放在一起的,而不同类型的数据之间会被隔离开。而对这些数据进行操作管理的又被成为数据库管理系统。读写数据库的语言又被叫做SQL语言,一般是由程序来操纵SQL语句来进行对数据库的读写操作。而数据库内部也有划分,分为了关系型数据库和非关系型数据库,关系型数据库就是内部存放的数据的格式能够直观的反映出数据库内实体间的关系,常见的关系型数据库有:MySQL数据库、SQLServer等,相反的非关系型数据库内的结构被简化了,为了避免冗余以及摒弃分布式操作而设计了这种类型的数据库,常见的非关系型数据库有:MongoDB等。

MySQL数据库由瑞典的MySQLAB公司开发出来,它的优点就是体积小,速度快,并且成本低的同时还是一个开源的软件,所以一些中小型公司常常采用MySQL数据库来进行开发。

2.4 B/S结构

由于Web项目的兴起,B/S结构也伴随着一同兴起的一种网络结构模式,B/S结构统一了浏览器,将系统功能实现的核心部分放在了服务器上面,目的就是为了简化开发者的开发以及维护。它的工作流程大致是:首先用户在客户端提交表单页面,向服务器发送请求,服务器接收到请求后对请求进行处理,处理这些请求的技术就是服务器端常常使用到的技术,比如:JSP等,然后服务器端又把处理完请求的响应返回给浏览器,然后浏览器呈现出用户界面。结构图如下:

3 系统分析与设计

3.1 需求分析

3.1.1 需求说明

本需求针对大学社团管理系统的设计与实现,旨在开发一个高效、可操作性强且具备良好可扩展性的管理系统。该系统需基于JAVA语言,运用MYSQL数据库和B/S架构,支持多用户权限管理,确保不同用户能够完成各自的功能。系统应实现对大学社团信息的规范管理、科学统计和快速查询,以提升管理效率,减轻学校社团管理负担。同时,该系统需确保良好的用户体验,为大学生提供一个更好的社团环境。

3.1.2 用例分析图

本文的用例分析图如下图1所示。

图 1用例分析图

3. 2 整体功能设计

3.2.1 程序功能分析

有一个简单方便的社团管理系统,能减少不必要的时间,保证活动记录的准确性。清楚的了解何时何地多少人举办社团活动,方便对社团活动历史记录的管理和查看,对社员之间的交流也起到促进作用。所以我认为该系统需要两个模块,用户模块和管理员模块,用户模块包括以下的功能:

1.用户注册功能:用户登录之前需要进行身份注册,输入自己的个人信息,登录名称唯一。

2.用户登录功能:用户名密码校验是否正确,正确即可放行,将登录信息存入到Session。

3.新闻列表:用户可以查看新闻信息,了解学校的新闻动态。

4.社团列表:用户可以查看所有社团,申请加入社团,也可以申请加入社团活动,同时可以成立社团和查看自己成立的社团。

5.留言,用户可以对系统内的一些内容进行留言,对一些活动发表自己的看法。

管理员模块包括以下的功能:

1.用户管理:管理员可以管理所有的学生信息,添加、查看、删除、修改、锁定用户。

2.新闻管理:管理员可以管理所有的新闻信息,发布、审核、推荐、删除、修改新闻信息。

3.留言管理:管理员可以管理所有的留言信息、回复信息等。

4.社团列表:主要是管理社团的基本信息,同时具有审核社团,编辑、删除社团

5.社团风采:主要是管理社团的详细信息,介绍社团的风采。

6.社团活动:主要是管理社团的活动信息,审核社团活动、同时查看申请参加活动的人。

程序功能分析图如下图3.21所示。

图 2程序功能分析图

图3.21

3.2.2 数据流图设计

通过数据流图可以分析出系统的操作流程,理顺系统开发的方向,通过表与表之间数据流通,确定系统开发时的逻辑关系。根据系统分析阶段所得出的结论确定了学生社团管理系统中存在的实体。

系统数据流图如下所示。

4 详细设计与实现

4.1 数据库设计

4.1.1 部分E-R图

图 4.11 部分E-R图

4.1.2 数据库表

表4.1 db_active_stu(学生活动申请信息)表

中文名称

英语名称

字段名

数据类型

描述

编号

id

id

varchar

活动编号

active_id

active_id

varchar

学生编号

stu_id

stu_id

varchar

学生姓名

stu_name

stu_name

varchar

联系电话

phone

phone

varchar

报名状态

type

type

varchar

是否正常出席

is_arrive

is_arrive

varchar

表4.2 db_message(留言信息)表

中文名称

英语名称

字段名

数据类型

描述

编号

id

id

varchar

留言内容

content

content

text

留言时间

create_time

create_time

timestamp

留言学生

create_stu

create_stu

varchar

审核状态

audit_type

audit_type

varchar

回复内容

replay

replay

text

回复时间

replay_time

replay_time

timestamp

回复人

replay_user

replay_user

varchar

表4.3 db_site_news(新闻信息)表

中文名称

英语名称

字段名

数据类型

描述

编号

id

id

varchar

新闻状态

news_type

news_type

varchar

标题

title

title

varchar

新闻主图

pic

pic

varchar

简介

short_content

short_content

text

新闻内容

content

content

longtext

创建人

create_user

create_user

varchar

创建时间

create_time

create_time

timestamp

是否推荐

is_run

is_run

varchar

所属社团

belon_team

belon_team

varchar

是否审核

is_audit

is_audit

varchar

开始时间

ac_start_time

ac_start_time

timestamp

结束时间

ac_end_time

ac_end_time

timestamp

是否可以回复

is_can_apply

is_can_apply

varchar

表4.4  db_stu_tem(学生社团信息)表

中文名称

英语名称

字段名

数据类型

描述

学生编号

stu_id

stu_id

varchar

社团编号

team_id

team_id

varchar

表4.5  db_student(学生信息)表

中文名称

英语名称

字段名

数据类型

描述

编号

id

id

varchar

登录名称

login_name

login_name

varchar

登录密码

login_password

login_password

varchar

注册时间

regit_time

regit_time

timestamp

审核状态

audit_type

audit_type

varchar

学生姓名

stu_name

stu_name

varchar

性别

sex

sex

varchar

学院

school_room

school_room

varchar

班级

class_room

class_room

varchar

联系电话

phone

phone

varchar

头像

pic

pic

varchar

备注

remark

remark

text

表4.6 db_team_applay(社团申请信息)表

中文名称

英语名称

字段名

数据类型

描述

编号

id

id

varchar

申请社团编号

applay_team

applay_team

varchar

申请学生

applay_stu

applay_stu

varchar

申请理由

applay_content

applay_content

text

申请时间

applay_time

applay_time

timestamp

申请状态

applay_type

applay_type

varchar

表4.7 db_teams(社团信息)表

中文名称

英语名称

字段名

数据类型

描述

编号

id

id

varchar

社团名字

team_name

team_name

varchar

社团宣传图

pic

pic

varchar

社团介绍

team_intro

team_intro

text

成立时间

build_time

build_time

timestamp

创建人(社长)

build_stu

build_stu

varchar

审核状态

audit_type

audit_type

varchar

成员数

members

members

int

备注

remark

remark

text

表4.8 money_manger(财务信息)表

中文名称

英语名称

字段名

数据类型

描述

编号

id

id

varchar

活动编号

act_id

act_id

varchar

交易类型

type

type

varchar

1.支出 2.收入

交易金额

money

money

double

交易备注

remark

remark

text

表4.9 sys_menu(菜单信息)表

中文名称

英语名称

字段名

数据类型

描述

编号

id

id

varchar

单菜名称

name

name

varchar

访问地址

href

href

varchar

目标

target

target

varchar

是否显示

is_show

is_show

varchar

排序

sort

sort

int

父级ID

parent_id

parent_id

varchar

级父ids

parent_ids

parent_ids

varchar

备注

remarks

remarks

text

表4.10 sys_menu_role(菜单角色信息)表

中文名称

英语名称

字段名

数据类型

描述

角色编号

role_id

role_id

varchar

菜单编号

menu_id

menu_id

varchar

表4.11 sys_role(角色信息)表

中文名称

英语名称

字段名

数据类型

描述

编号

id

id

varchar

角色名称

role_name

role_name

varchar

角色标志

role_flag

role_flag

varchar

备注

introduce

introduce

text

表4.12 sys_user(用户信息)表

中文名称

英语名称

字段名

数据类型

描述

编号

id

id

varchar

用户名

username

username

varchar

密码

password

password

varchar

头像

pic

pic

varchar

角色

role

role

varchar

是否锁定

is_bolck

is_bolck

varchar

4.2 客户端设计

4.2.1 登录功能实现

用户的登录入口在系统首页的右上方,系统的部分功能只有在用户登录状态下才可以访问,登录时用户提交的表单会和数据库中的用户信息进行比对,各项一致才能通过校验,在系统中进行下一步操作。主要步骤为当用户输入账号、密码之后,系统校验账号和密码是否正确,如果错误则提示相关错误,验证无误后前端的login.jsp页面会向后端发送登录请求,通过调用代码中的MainController类里的login方法来验证。验证成功后,将用户名显示在系统首页上。登录界面如下图4.21所示。

图4.21 用户登录界面

4.2.2 用户注册

用户的注册入口在系统首页的右上方,系统的学生用户只能通过注册进行添加,只有注册之后才能进行登录。主要步骤为当用户输入好所有信息之后,验证无误后前端的regit.jsp页面会向后端发送注册请求,注册成功后,用户将能进行登录。界面如图4.22所示。

图4.22 用户注册界面

4.2.3用户查看

用户点击首页社团列表,将teamDetail请求发送到FrontController类,展示所有的社团信息,用户登录之后,通过点击申请加入社团,即可发送申请请求。用户查看社团信息如下图4.24所示:

图4.24 社团信息页面

4.2.4 社团活动

用户点击首页社团活动列表,将siteNewsList请求发送到FrontController类,参数newsType为2,即可展示所有的社团活动信息。用户查看社团活动信息如下图4.25所示。

图4.25 社团活动信息页面

4.2.5 用户中心功能实现

用户登录成功之后,点击首页用户名信息,弹出下拉列表之后,选择用户中心即可查看以及修改自己的信息,修改之后,点击更新信息发送请求给FrontController类的regit方法,完成个人信息的更新。用户中心页面如下图4.26所示。

图4.26 用户中心图

4.2.6 用户社团申请

用户社团申请,先完善社团信息之后,点击提交申请,发送请求给FrontControlle类的applayBuildTeam方法,在调用TeamsDao的add方法,将基本数据写入数据库。用户社团申请页面如图4.27所示。

图4.27 用户社团申请页面

4.2.7 用户申请页面

用户查看申请加入社团列表,点击申请加入社团,发送getMyTeamApplay请求到FrontController,再调用TeamApplayDao的list方法,将所有自己申请的社团信息进行分页展示。用户申请加入社团列表页面如图4.28所示。

图4.28 用户申请页面

4.2.8 管理员管理页面

添加用户信息时,完善信息之后,点击保存调用Controlle层的UserController接受传过来的用户信息,再调用UserController类的add方法,经过UserController业务层到UserDao持久层的处理,完成对整个添加用户信息的操作。修改信息时,选择需要修改的用户进行修改,调用UserController控制器的form方法,拿到该用户原本的信息并显示到页面,管理员再对需要修改的用户信息字段进行修改,完成后调用update方法,调用业务层的update方法,更新数据库的菜单信息表的数据。管理员管理页面如图4.29所示。

图4.29 管理员管理页面

4.2.9 菜单管理页面

添加菜单信息时,完善信息之后,点击保存调用Controlle层的MenuController接受传过来的菜单信息,再调用MenuController类的add方法,经过MenuController业务层到MenuDao持久层的处理,完成对整个添加菜单信息的操作。修改信息时,选择需要修改的菜单进行修改,调用MenuController控制器的form方法,拿到该菜单原本的信息并显示到页面,管理员再对需要修改的菜单信息字段进行修改,完成后调用update方法,调用业务层的update方法,更新数据库的菜单信息表的数据。菜单管理页面如图4.30所示。

图4.30 菜单管理页面

4.2.10留言管理

回复留言时,选择需要回复的留言进行修改,调用MessageController控制器的form方法,拿到该留言原本的信息并显示到页面,管理员再对需要回复的留言信息字段进行回复,完成后调用update方法,调用业务层的update方法,回复留言后将回复数据写入留言信息表。留言管理页面如图4.31所示。

图4.31 留言管理页面

  • 7
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值