个人简介一名14年经验的资深毕设内行人语言擅长Java、php、微信小程序、Python、Golang、安卓Android等开发项目包括大数据、深度学习、网站、小程序、安卓、算法。平常会做一些项目定制化开发、代码讲解、答辩教学、文档编写、也懂一些降重方面的技巧。感谢大家的关注与支持各位老师好我是xx同学我的毕业设计题目是《基于SSM的共享自习室预约管理系统的设计与实现》。随着考研考公人数增加自习室占座现象严重传统人工管理效率低下因此我计划开发一套信息化管理系统来解决这些问题。本系统主要分为用户端和管理员端两大模块。用户端包括首页浏览、个人中心、座位预定、退座管理、预约记录查询、在线支付、联系客服、学习排行、在线留言及学习论坛等功能管理员端包括用户管理含黑名单机制、自习室管理、座位预定管理、退座信息管理、在线留言回复、预约天数设置和续费提醒等功能。技术栈方面系统采用Java语言开发基于SSM框架SpringSpringMVCMyBatis数据库使用MySQL前端计划使用JSP或HTMLJavaScript实现。整个系统采用B/S架构用户通过浏览器即可访问无需安装客户端。评委老师xx同学你好我看了你的开题报告。首先我想问一下你的系统要解决的核心问题是什么为什么不用人工管理而要开发这个系统答辩学生老师好。我的系统主要解决三个核心问题第一是占座问题现在自习室很多人用书本占座但人不在导致资源浪费第二是预约不方便传统方式需要到现场排队不能提前知道有没有座位第三是管理效率低管理员人工统计座位使用情况很费时。用系统可以实现线上预约、自动释放超时座位、实时查看使用情况这样比人工管理更高效、公平。评委老师好的那你为什么选择SSM框架有没有考虑过其他框架比如SpringBoot答辩学生选择SSM框架主要是因为我在课程学习中接触过对这个技术栈比较熟悉资料也比较多遇到问题容易找到解决方案。我也了解过SpringBoot它确实配置更简单但SSM框架能让我更清楚地理解各个组件是如何整合工作的比如Spring负责依赖注入、SpringMVC处理请求转发、MyBatis做数据持久化这对我的学习更有帮助。而且学校教学也是以SSM为主选择这个框架更稳妥一些。评委老师你的系统有学习排行功能这个排名依据是什么会不会涉及用户隐私问题答辩学生学习排行的依据主要是用户的预约时长和实际使用时长比如本周学习时长排名、本月学习时长排名。关于隐私问题我计划在系统中只显示用户的昵称和学习时长不显示真实姓名、学号等敏感信息。用户也可以选择是否参与排名在个人信息设置里有个是否显示在排行榜的选项默认是开启的用户可以手动关闭。评委老师系统中提到了黑名单功能什么情况下会把用户拉入黑名单怎么解除答辩学生根据我的设计用户预约后未按时到达且未提前取消或者多次恶意占座比如一周内违约3次以上系统会自动或管理员手动将用户加入黑名单。黑名单用户将无法继续预约座位但已预约的座位仍然有效。解除方式是如果是自动加入的黑名单7天后自动解除如果是管理员手动加入的需要联系管理员申诉管理员审核后可以手动解除。同时系统会记录用户的信用积分违约扣分守约加分积分过低也会触发黑名单机制。评委老师你的座位预约是怎么实现的比如我预约了明天上午的座位这个座位在这段时间内别人还能预约吗答辩学生我的设计是分时段预约机制。每个座位按时间段划分比如上午场8:00-12:00、下午场14:00-18:00、晚间场19:00-22:00。用户预约某个时段后该座位在这个时段的状态变为已预约其他人无法预约同一时段但可以预约其他时段。如果用户预约的是全天那么这一天该座位都显示为占用。系统会用不同颜色标识座位状态绿色空闲、黄色预约中、红色占用这样直观明了。评委老师系统里有续费提醒功能这个是怎么实现的是短信提醒还是系统内消息答辩学生考虑到实现成本我计划采用系统内消息提醒为主邮件提醒为辅的方式。当用户的储值卡余额低于10元或有效期不足3天时用户登录系统时会在首页弹出提醒同时在个人中心的消息通知里也有记录。如果用户在个人信息里绑定了邮箱系统也会发送邮件提醒。短信提醒需要接入第三方短信平台有费用成本我目前计划先不做但预留了接口如果后续需要可以扩展。评委老师你提到使用MySQL数据库能简单说说你打算设计哪些主要的数据表吗答辩学生我目前规划了6张核心表第一是用户表user存储用户ID、用户名、密码、手机号、信用积分等第二是自习室表room存储自习室ID、名称、位置、类型、容纳人数等第三是座位表seat存储座位ID、所属自习室、座位号、状态第四是预约记录表order存储预约ID、用户ID、座位ID、预约时间、使用时段、状态等第五是留言表message存储留言内容、用户ID、管理员回复等第六是管理员表admin存储管理员账号信息。另外可能还需要黑名单记录表和支付记录表。评委老师最后一个问题你的系统有没有考虑并发问题比如两个人同时预约最后一个座位会不会出现冲突答辩学生这个问题我确实考虑过。我计划在数据库层面使用乐观锁或悲观锁来解决。具体做法是在座位表加一个version字段版本号当用户查询座位时获取版本号预约时检查版本号是否变化如果变化说明已被他人预约提示用户该座位已被预约请选择其他座位。或者在预约操作时使用数据库事务对座位行加锁确保同一时间只有一个用户能预约成功。另外我会在前端做二次确认点击预约后先检查实时状态避免无效操作。【评委老师总结评价】xx同学你的答辩表现整体不错准备比较充分。我对你做几点评价优点方面第一选题贴近实际共享自习室管理确实是高校面临的现实问题有实际应用价值第二功能设计比较完整用户端和管理员端的核心功能都考虑到了特别是黑名单机制和信用积分的设计体现了对业务规则的思考第三技术选型合理SSM框架虽然传统但适合你的基础水平技术风险可控。需要改进的地方第一并发处理方案需要再细化乐观锁和悲观锁的区别和适用场景要搞清楚答辩时说得有点模糊第二学习排行的隐私保护机制要在需求分析里明确写出来不要只是口头说明第三系统界面设计要考虑用户体验比如座位选择能否用可视化座位图而不是下拉列表这个可以在后续开发中优化。建议开发过程中要注意代码规范多写注释数据库设计要符合三大范式。测试环节不要只做功能测试要做一下压力测试模拟多人同时预约的场景。总体来说同意开题。希望你按计划推进遇到问题及时和指导老师沟通。答辩结束。以上是某同学的毕业设计答辩的过程如果你现在还没有参加答辩还是开题阶段已经选好了题目不知道怎么写开题报告可以下面找找有没有自己符合自己题目的开题报告内容列表中的开题报告都是往届真实的开题报告可发送使用或参考。文末或底部来联xi可免费获取最后有时间和有基础的同学建议自己多花时间找一下资料开题报告、源码自己独立完成毕设需要开题报告内容、源码参考的可以联xi博主没有选题的也可以联系我们进行帮你选题、定功能和建议。