> # ♻️ 资源
> **大小:** 4.68MB
> **文档链接:**[**https://www.yuque.com/sxbn/ks/100010103**](https://www.yuque.com/sxbn/ks/100010103)
> **➡️ 资源下载:**[**https://download.csdn.net/download/s1t16/87280615**](https://download.csdn.net/download/s1t16/87280615)
> **注:更多内容可关注微信公众号【神仙别闹】,如当前文章或代码侵犯了您的权益,请私信作者删除!**
> ![qrcode_for_gh_d52056803b9a_344.jpg](https://cdn.nlark.com/yuque/0/2023/jpeg/2469055/1692147256036-49ec7e0c-5434-4963-b805-47e7295c9cbc.jpeg#averageHue=%23a3a3a3&clientId=u8fb96484-770e-4&from=paste&height=140&id=u237e511a&originHeight=344&originWidth=344&originalType=binary&ratio=1.25&rotation=0&showTitle=false&size=8270&status=done&style=none&taskId=ud96bf5f7-fe85-4848-b9c2-82251181297&title=&width=140.1999969482422)
# 宿舍管理系统
## 一、系统功能分析
### 1.1 功能模块
宿舍管理系统实现的功能主要分三大类:系统用户的注册登录验证、对宿舍信息的增删改查、对学生信息的增删改查。
#### 1.1.1 系统用户的登录注册验证
登录时,通过用户名和密码判断是否有此用户;注册时,不允许注册相同用户名的用户。为防止多次注册,设置邮箱验证码功能。基础抽象类如下:
```java
public boolean login(String username, String password) throws Exception;//登录验证
public boolean register(UserBean userBean) throws SQLException ;//注册用户
public boolean addUser(UserBean userBean);//增加用户
```
#### 1.1.2 宿舍信息增删改查
宿舍功能模块的增删改查有许多限制条件,如增加宿舍时,宿舍楼号只能在 01-10 之间,当宿舍入住学生时不可删除,宿舍楼号作为唯一标识不可新修改,查询宿舍时可以多条件联合模糊查询。基础抽象类如下:
```java
public boolean addDorm(Dormbean dormbean) throws SQLException ;//增加宿舍信息
public boolean delDorm(Dormbean dormbean) throws SQLException;//删除宿舍信息
public boolean updateDorm(Dormbean dormbean) throws SQLException ;//更新宿舍信息
public ArrayList<Dormbean> selectDorm(Dormbean dormbean) throws SQLException ;//查询宿舍信息
public ArrayList<Dormbean> showAllDorm() throws SQLException;//展示所有宿舍信息
public int dormTotalCount(Dormbean dormbean);//获取宿舍个数
public Dormbean selectDormById(int id) throws SQLException;//根据id查询宿舍
public boolean updateDormQuantity(Dormbean dormbean); //更新宿舍当前人数
```
#### 1.1.3 学生信息增删改查
学生信息的增删改查需要做到多表联动,增加学生信息并选择宿舍的时候需要和宿舍表进行联合操作,根据学生的性别及宿舍已入住人数判断学生信息是否可以添加成功;删除学生信息时,为防止误删,提供了事务回滚操作;因学生信息较多,提供了批量删除和分页功能操作;查询时可以多条件模糊查询;学生学号作为唯一标识,不可修改。抽象基础类如下:
```java
public ArrayList<StudentBean> showStudentByPage(int status,int nowPage,int step) throws SQLException;//分页展示所有学生信息
public int StudentTotalCount(int status,StudentBean studentBean);//根据学生状态获得学生个数
public ArrayList<StudentBean> selectStudents(int status,int nowPage,int step,StudentBean studentBean) throws SQLException ;//根据条件查询学生信息并分页
public boolean addStudent(StudentBean studentBean) throws SQLException ;//增加学生信息
public boolean updateStudent(StudentBean studentBean);//更新学生信息
public boolean updateStatusStudent(int id,int status);//更新学生状态
public boolean delStudent(int id); //根据id删除学生
public boolean delAllStudent(String[] id); //根据id数组批量删除学生
public boolean updateAllStudent(String[] id);//根据id数组批量改变学生信息状态
```
### 1.1 系统运行环境
项目开发工具为 Spring Tool Suite ,版本为 3.9.7.RELEASE;数据库为 MySQL 数据库,版本为 5.5.53;服务器为 Tomcat 服务器,版本为 8.5.37。
## 二、后台数据库设计
### 2.1 数据库 dormitory
数据库中共有三张表管理员信息表 user,宿舍信息表 dorm,学生信息表 student。
## 2.2 用户信息表 user
用户信息表包含 5 个字段信息,对应着系统用户的登录注册验证模块,表结构如下所示。
用户信息表
| 字段名 | 字段类型 | 字段长度 | 意义 | 备注 |
| --- | --- | --- | --- | --- |
| id | int | 11 | 数据编号 | 主键 |
| username | varchar | 10 | 用户名 | |
| password | varchar | 15 | 密码 | |
| email | varchar | 20 | 邮箱 | |
| realname | varchar | 10 | 真实姓名 | |
### 2.3 宿舍信息表
宿舍信息表包含七个字段,对应着宿舍信息增删改查的功能模块,表结构如下:
宿舍信息表
| 字段名 | 字段类型 | 字段长度 | 意义 | 备注 |
| --- | --- | --- | --- | --- |
| id | int | 5 | 数据编号 | 主键 |
| house | varchar | 3 | 哪一栋 | |
| build | varchar | 5 | 哪一座 | |
| number | varchar | 10 | 门牌号 | |
| attribute | varchar | 5 | 男女宿舍 | |
| quantity | int | 2 | 当前人数 | |
| status | int | 2 | 是否可用 | 可用为 1;不可用为 0 |
### 2.4 学生信息表
学生信息表包含 12 个字段,对应着学生信息增删改查的功能模块,表结构如下:
学生信息表
| 字段名 | 字段类型 | 字段长度 | 意义 | 备注 |
| --- | --- | --- | --- | --- |
| id | int | 11 | 数据编号 | 主键 |
| sid | int | 11 | 学号 | |
| dormID | int | 5 | 对应宿舍 ID | |
| sname | varchar | 10 | 学生姓名 | |
| ssex | varchar | 5 | 学生性别 | |
| sbirthday | date | | 出生日期 | |
| smajor | varchar | 30 | 专业 | |
| scollege | varchar | 20 | 学院 | |
| sentranceT | int | 5 | 入学时间 | |
| stelephone | varchar | 15 | 电话 | |
| img | varchar | 20 | | |
| status | int | 2 | 学生状态 | 默认为 1,代表住宿中;2 代表已离开 |
## 三、系统模块划分
### 3.1 用户模块
用户模块主要涉及用户登录和用户注册功能,为实现这两个功能,涉及了五个方法,从而对数据库进行操作,所有方法如下:
```java
public boolean isUserExist(String username, String password) throws SQLException;//登录时根据用户名和密码判断用户是否存在
public boolean addUser(UserBean userBean);//增加用户
public boolean updateUser(UserBean userBean);//更新用户信息
public boolean selectByUserName(String username) throws SQLException;//注册用户时,先根据用户名查找此用户名是否已被注册
public UserBean selectUser(String username, String password);//根据用户名和密码,返回用户的详细信息
```
#### 3.1.1 用户登录模块
用户登录模块需要根据用户输入的密码和用户名,对数据库中存储的数据进行查询,如果查询到对应数据,则允许登录,反之,则不允许登录。
#### 3.1.2 用户注册模块
用户注册时因为用户名为唯一标识,所以不允许注册有相同用户名的账号,为了防止重复注册,用户在注册时,需要填写自己的邮箱地址,系统会向用户邮箱发送验证码,验证码正确时才允许注册。
### 3.2 宿舍模块
宿舍模块包括对用户的增删改查操作,为实现这些操作,涉及了以下的方法:
```java
public boolean addDorm(Dormbean dormbean) ;//增加宿舍
public boolean delDorm(Dormbean dormbean) throws SQLException;//删除宿舍
public boolean updateDorm(Dormbean dormbean) ;//更新宿舍
public ArrayList<Dormbean> selectDorm(Dormbean dormbean) throws SQLException ;//查询复合条件的宿舍
public ArrayList<Dormbean> showAllDorm() throws SQLException;//展示所有宿舍
public boolean isExitDorm(Dormbean dormbean) throws SQLException;//判断宿舍是否存在
public Dormbean selectDormB
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
详情介绍:https://www.yuque.com/sxbn/ks/100010103 项目开发工具为 Spring Tool Suite ;数据库为 MySQL 数据库;服务器为 Tomcat 服务器。 宿舍管理系统实现的功能主要分三大类:系统用户的注册登录验证、对宿舍信息的增删改查、对学生信息的增删改查。 系统用户的登录注册验证 登录时,通过用户名和密码判断是否有此用户;注册时,不允许注册相同用户名的用户。为防止多次注册,设置邮箱验证码功能。 宿舍信息增删改查 宿舍功能模块的增删改查有许多限制条件,如增加宿舍时,宿舍楼号只能在 01-10 之间,当宿舍入住学生时不可删除,宿舍楼号作为唯一标识不可新修改,查询宿舍时可以多条件联合模糊查询。 学生信息增删改查 学生信息的增删改查需要做到多表联动,增加学生信息并选择宿舍的时候需要和宿舍表进行联合操作,根据学生的性别及宿舍已入住人数判断学生信息是否可以添加成功;删除学生信息时,为防止误删,提供了事务回滚操作;因学生信息较多,提供了批量删除和分页功能操作;查询时可以多条件模糊查询;学生学号作为唯一标识,不可修改。
资源推荐
资源详情
资源评论
收起资源包目录
基于Java(jsp+servlet)+Mysql实现的(Web)宿舍管理系统【100010103】 (283个子文件)
StudentDaoImpl.class 8KB
DormDAoImpl.class 7KB
StudentAddServlet.class 5KB
StudentSelectServlet.class 4KB
StudentBean.class 4KB
StudentSelectDelListServlet.class 4KB
StudentServiceImpl.class 3KB
DormSelectServlet.class 3KB
EmailUtil.class 3KB
StudentDelListServlet.class 3KB
StudentListServlet.class 3KB
StudentDetailServlet.class 3KB
LoginServlet.class 3KB
DButil.class 3KB
RegisterServlet.class 3KB
UserUpdateServlet.class 3KB
DormListServlet.class 2KB
UserDaoImpl.class 2KB
DormServiceImpl.class 2KB
DormUpdateStatusServlet.class 2KB
StudentUpdateServlet.class 2KB
CodeServlet.class 2KB
DormDetailServlet.class 2KB
Dormbean.class 2KB
DormAddServlet.class 2KB
DormUpdateByIdServlet.class 2KB
LoginFilter.class 2KB
DormDelServlet.class 2KB
PageUtil.class 2KB
StudentDeleteAllServlet.class 2KB
StudentUpdateAllServlet.class 2KB
StudentBackServlet.class 2KB
StudentDelServlet.class 2KB
StudentDeleteServlet.class 2KB
UserBean.class 2KB
FileServlet.class 2KB
UserServiceImpl.class 1KB
DBConnection.class 1KB
IStudentDao.class 990B
IDormDao.class 814B
IStudentService.class 782B
IDormService.class 715B
IUserDao.class 437B
IUserService.class 330B
.classpath 648B
org.eclipse.wst.common.component 465B
org.eclipse.wst.jsdt.ui.superType.container 49B
layui.css 68KB
layer.css 14KB
xadmin.css 13KB
layui.mobile.css 10KB
laydate.css 7KB
code.css 1KB
font.css 505B
java+web课程结课作业.doc 1003KB
iconfont.eot 48KB
iconfont.eot 40KB
59.gif 10KB
22.gif 10KB
24.gif 8KB
13.gif 7KB
16.gif 7KB
39.gif 6KB
64.gif 6KB
63.gif 6KB
50.gif 6KB
loading-0.gif 6KB
4.gif 6KB
1.gif 5KB
42.gif 5KB
71.gif 5KB
21.gif 5KB
20.gif 5KB
29.gif 5KB
70.gif 4KB
5.gif 4KB
17.gif 4KB
27.gif 4KB
9.gif 4KB
44.gif 4KB
11.gif 4KB
8.gif 4KB
3.gif 4KB
23.gif 4KB
34.gif 4KB
41.gif 4KB
38.gif 4KB
65.gif 3KB
32.gif 3KB
45.gif 3KB
7.gif 3KB
12.gif 3KB
26.gif 3KB
60.gif 3KB
2.gif 3KB
40.gif 3KB
25.gif 3KB
19.gif 3KB
66.gif 3KB
18.gif 3KB
共 283 条
- 1
- 2
- 3
资源评论
- 轻风夜雨沫2023-06-29总算找到了想要的资源,搞定遇到的大问题,赞赞赞!
神仙别闹
- 粉丝: 2671
- 资源: 7640
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- MyBatis动态SQL是一种强大的特性,它允许我们在SQL语句中根据条件动态地添加或删除某些部分,从而实现更加灵活和高效的数据
- MyBatis动态SQL是一种强大的特性,它允许我们在SQL语句中根据条件动态地添加或删除某些部分,从而实现更加灵活和高效的数据
- MyBatis动态SQL是一种强大的特性,它允许我们在SQL语句中根据条件动态地添加或删除某些部分,从而实现更加灵活和高效的数据
- MyBatis动态SQL是一种强大的特性,它允许我们在SQL语句中根据条件动态地添加或删除某些部分,从而实现更加灵活和高效的数据
- 文件批量改名神器10.0一款简单易用的批量文件重命名工具(已注册PRO版本).rar
- MyBatis动态SQL是一种强大的特性,它允许我们在SQL语句中根据条件动态地添加或删除某些部分,从而实现更加灵活和高效的数据
- MyBatis动态SQL是一种强大的特性,它允许我们在SQL语句中根据条件动态地添加或删除某些部分,从而实现更加灵活和高效的数据
- MyBatis动态SQL是一种强大的特性,它允许我们在SQL语句中根据条件动态地添加或删除某些部分,从而实现更加灵活和高效的数据
- MyBatis动态SQL是一种强大的特性,它允许我们在SQL语句中根据条件动态地添加或删除某些部分,从而实现更加灵活和高效的数据
- MyBatis动态SQL是一种强大的特性,它允许我们在SQL语句中根据条件动态地添加或删除某些部分,从而实现更加灵活和高效的数据
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功