# community_management_system **Repository Path**: yao_haoxin/community_management_system ## Basic Information - **Project Name**: community_management_system - **Description**: 基于javaweb实现社团管理系统 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-12-29 - **Last Updated**: 2026-03-11 ## Categories & Tags **Categories**: Uncategorized **Tags**: Java, javaWEB ## README # 社管云平台 (Community Management System) ## 项目介绍 基于JavaWeb技术栈实现的社团信息管理系统,支持三种角色(系统管理员、社团负责人、学生)的完整功能。 ## 技术栈 - **后端**: Java Servlet + JSP - **数据库**: MySQL 8.0 - **前端**: Bootstrap 5 + JavaScript - **服务器**: Apache Tomcat 8.5+ ## 核心功能 ### 一、系统管理员功能模块 系统管理员为最高权限角色,负责平台整体运行、用户管理及权限控制。 #### 1. 用户与角色管理 - **用户信息管理**: 查看系统中所有用户的基本信息,包括学生、社团负责人 - **角色分配与调整**: 对用户进行角色变更,如将学生升级为社团负责人,或取消其负责人权限 - **账号启停管理**: 对违规或异常账号进行禁用、启用操作,保障系统安全 #### 2. 社团负责人审核 - **审核社团负责人注册申请**: 用户注册时选择社团负责人身份需要审核 - **审核结果处理**: - 审核通过:账号生效,可正常管理社团 - 审核驳回:账号不可使用,需重新提交申请,并显示驳回原因 #### 3. 社团基础信息管理 - **社团类型管理**: 新增、修改、删除社团分类(如学术类、文艺类、体育类等) - **社团信息审核**: 审核新建社团的基本信息、章程、指导老师等内容 #### 4. 系统公告管理 - 发布系统级公告 - 管理和删除公告 ### 二、社团负责人功能模块 社团负责人是具体社团的管理者,负责社团日常运营。 #### 1. 社团信息管理 - 创建社团(需管理员审核) - 编辑社团基本信息(名称、简介、Logo、章程等) - 维护指导老师信息 - 查看社团历史活动记录 #### 2. 成员管理 - 审核学生加入社团的申请 - 查看与维护社团成员列表 - 设置成员职务(如副社长、部长、干事) - 移除违规或退出成员 #### 3. 活动管理 - 发布社团活动(时间、地点、人数限制、活动说明) - 管理活动报名信息(通过/拒绝) - 发布活动通知与变更提醒 ### 三、学生(普通用户)功能模块 学生用户是系统的主要使用者,可参与社团和活动。 #### 1. 社团浏览与申请 - 浏览全校已注册社团信息 - 查看社团简介、活动记录、成员情况 - 提交加入社团申请 - 查看申请审核状态 - 退出已加入的社团 #### 2. 活动参与 - 查看已加入社团发布的活动 - 报名参加社团活动 - 查看活动详情(时间、地点、注意事项) - 接收活动变更通知 #### 3. 信息互动 - 接收系统公告和社团通知 - 在社团公告下发表评论 - 查看个人参与活动的历史记录 #### 4. 个人信息管理 - 修改个人信息(姓名、邮箱、手机号) - 上传和更换头像 - 修改密码 ### 四、登录注册模块 1. **用户注册**: - 可注册为学生或社团负责人 - 社团负责人需要管理员审核 - 注册状态:待审核、审核通过、驳回 - 驳回时显示原因 2. **登录页面**: - 左右布局设计 - 左侧显示社管云平台宣传元素 - 右侧为登录表单 - 支持记住登录状态 ## 项目结构 ``` community_management_system/ ├── src/ │ ├── dao/ # 数据访问层 │ │ ├── UserDao.java │ │ ├── ClubDao.java │ │ ├── ClubMemberDao.java │ │ ├── ActivityDao.java │ │ ├── ActivityRegistrationDao.java │ │ ├── ClubTypeDao.java │ │ ├── AnnouncementDao.java │ │ └── AnnouncementCommentDao.java │ ├── entity/ # 实体类 │ │ ├── User.java │ │ ├── Club.java │ │ ├── ClubMember.java │ │ ├── Activity.java │ │ ├── ActivityRegistration.java │ │ ├── ClubType.java │ │ ├── Announcement.java │ │ └── AnnouncementComment.java │ ├── service/ # 业务逻辑层 │ │ ├── UserService.java │ │ ├── ClubService.java │ │ ├── ClubMemberService.java │ │ ├── ActivityService.java │ │ └── AnnouncementService.java │ ├── servlet/ # 控制层 │ │ ├── LoginServlet.java │ │ ├── RegisterServlet.java │ │ ├── LogoutServlet.java │ │ ├── AdminServlet.java │ │ ├── ClubServlet.java │ │ ├── ActivityServlet.java │ │ ├── UserServlet.java │ │ ├── StudentServlet.java │ │ └── LeaderServlet.java │ ├── filter/ # 过滤器 │ │ ├── CharsetFilter.java │ │ └── AuthFilter.java │ └── util/ # 工具类 │ └── JDBCUtils.java ├── web/ │ ├── WEB-INF/ │ │ └── web.xml │ ├── css/ # Bootstrap样式 │ ├── js/ # Bootstrap脚本 │ ├── file/ # 文件上传目录 │ ├── index.jsp # 登录页面 │ ├── register.jsp # 注册页面 │ ├── adminIndex.jsp # 管理员主页 │ └── userIndex.jsp # 学生/负责人主页 ├── sql.sql # 数据库脚本 ├── DEPENDENCIES.md # 依赖说明 ├── DEPLOYMENT.md # 部署指南 └── README.md # 项目说明 ``` ## 数据库设计 ### 核心表结构 1. **user** - 用户表 2. **club** - 社团表 3. **club_type** - 社团类型表 4. **club_member** - 社团成员表 5. **activity** - 活动表 6. **activity_registration** - 活动报名表 7. **announcement** - 公告表 8. **announcement_comment** - 公告评论表 详细表结构请查看 `sql.sql` 文件。 ## 快速开始 ### 1. 环境准备 - 安装JDK 1.8+ - 安装MySQL 5.7+ - 安装Apache Tomcat 8.5+ ### 2. 下载依赖 按照 [DEPENDENCIES.md](DEPENDENCIES.md) 下载必需的jar包到 `web/WEB-INF/lib` 目录 ### 3. 数据库初始化 ```bash mysql -u root -p < sql.sql ``` ### 4. 配置数据库连接 编辑 `src/util/JDBCUtils.java`,修改数据库连接信息。 ### 5. 构建项目 使用IDE(IntelliJ IDEA或Eclipse)导入项目并构建WAR包 ### 6. 部署运行 将生成的WAR包部署到Tomcat的webapps目录,启动Tomcat。 ### 7. 访问系统 浏览器访问: `http://localhost:8080/community-management/` 默认管理员账号: - 用户名: `admin` - 密码: `admin123` 📖 **详细步骤请查看**: [快速开始指南 (QUICKSTART.md)](QUICKSTART.md) ## 项目文档 - 📖 [快速开始指南 (QUICKSTART.md)](QUICKSTART.md) - 5分钟快速部署 - 📦 [依赖说明 (DEPENDENCIES.md)](DEPENDENCIES.md) - 依赖包下载和配置 - 🚀 [部署指南 (DEPLOYMENT.md)](DEPLOYMENT.md) - 详细部署步骤 - ⚙️ [配置说明 (CONFIG.md)](CONFIG.md) - 系统配置详解 - 📊 [项目总结 (PROJECT_SUMMARY.md)](PROJECT_SUMMARY.md) - 项目详细信息 - 🔌 [API文档 (API.md)](API.md) - 接口文档 - 📝 [更新日志 (CHANGELOG.md)](CHANGELOG.md) - 版本变更记录 - 🤝 [贡献指南 (CONTRIBUTING.md)](CONTRIBUTING.md) - 如何贡献代码 ## 功能特点 ✅ 完整的三角色权限管理 ✅ 社团负责人和社团信息双重审核机制 ✅ 灵活的社团成员管理 ✅ 活动发布和报名管理 ✅ 文件上传(头像、Logo、封面) ✅ 响应式界面设计 ✅ RESTful风格API ✅ 完善的权限过滤 ## 注意事项 1. 首次部署后请立即修改管理员密码 2. 确保 `web/file` 目录具有写入权限 3. 定期备份数据库 4. 生产环境建议使用HTTPS 5. 建议配置文件上传大小限制 ## 开发计划 - [ ] 添加社团公告评论功能 - [ ] 实现活动签到功能 - [ ] 添加数据统计和报表 - [ ] 支持社团财务管理 - [ ] 移动端适配优化 - [ ] 添加消息通知系统 ## 贡献 欢迎贡献代码!请查看 [贡献指南 (CONTRIBUTING.md)](CONTRIBUTING.md) 了解如何参与项目。 ### 贡献者 感谢所有为这个项目做出贡献的人! ## 许可证 本项目采用 MIT 许可证 - 查看 [LICENSE](LICENSE) 文件了解详情。 ## 联系方式 如有问题或建议,欢迎: - 📧 提交 [Issue](https://github.com/your-repo/issues) - 💬 参与 [Discussions](https://github.com/your-repo/discussions) - 🌟 给项目点个Star --- **开发时间**: 2024年12月 **当前版本**: v1.0.0 **维护状态**: 积极维护中 ✅