尧图网站建设 尧图网络
  • 首页
  • 关于我们
  • 服务项目
  • 案例展示
  • 建站流程
  • 资讯中心
  • 联系我们
首页/资讯中心/详情

学校维修系统中提交报修和报修成功页面核心代码的实现

学校维修系统中提交报修和报修成功页面核心代码的实现
📅 发布时间:2026/6/19 18:55:52

**

一、SubmitOrderServlet.java

**
核心作用
1.request.setCharacterEncoding(“utf-8”):接收前端表单中文(地址、故障描述、分类名)不会出现问号乱码;
2.response.setContentType:告诉浏览器返回内容是 HTML 文本,编码 UTF-8,弹窗 alert 中文正常显示。

获取当前访问用户的服务器会话空间 Session
读取登录用户信息,完成登录 + 权限校验


用户访问报修接口 → 取 Session 登录用户
无登录信息 → 弹窗提示 + 跳转登录页,结束;
已登录但不是学生 → 弹窗提示 + 返回上一页,结束;
已登录且是学生(role=0)→ 放行,执行获取表单、插入报修工单逻辑。


1.request.getParameter(“xxx”)
从前端报修页面表单里取出用户填写 / 选择的数据,接收 POST 提交的表单值;
2.typeId 做Integer.parseInt转换
前端传过来的表单数据全是字符串,报修分类 ID 是数字,必须转成 int 才能和数据库分类 ID 匹配对比;

1.new RepairTypeDao().findAllType()
调用 DAO 层,查询数据库里全部故障分类,封装成RepairType对象集合(每个对象存分类 id、分类名称);
2.增强 for 循环遍历分类列表
拿前端传过来的typeId,和每一条分类的 id 对比;
3.匹配成功后取出getTypeName()并break
找到对应分类的文字名称,立刻跳出循环,减少多余遍历;

1.定义新增报修工单的插入 SQL,向repair_order工单表写入数据;
2.DBUtil.getConn():调用工具类获取 MySQL 数据库连接;
3.pstmt预编译对象先初始化为 null,后续在 try 内实例化,方便 finally 统一关闭。
4.conn.prepareStatement(sql):预编译 SQL 语句,数据库提前解析 SQL 模板,执行效率更高,同时隔绝恶意注入语句;
setString(下标,值):按顺序给 4 个占位符填充之前组装好的报修数据;
executeUpdate():执行增 / 删 / 改 SQL,返回受影响行数,这里完成工单插入数据库;
执行成功后向前端输出 JS:弹窗提示提交成功,自动跳转到系统首页index.html。
完整执行流程
权限校验通过 → 组装报修表单数据 → 打开数据库连接 → 预编译插入 SQL 并填充参数 → 执行入库
成功:弹窗成功提示 + 跳首页;
失败:控制台打印错误 + 前端弹窗失败提示;
无论成败:关闭数据库连接,释放资源。

二、GetCategoryServlet.java


1.response.getWriter() 获取响应输出流对象 PrintWriter
2.RepairCategoryDao 是报修分类数据访问层 DAO 类,专门负责操作数据库里的故障分类表;
3.调用 DAO 的findAllCategory()方法,执行 SQL 查询数据库中所有报修故障分类;
4.每一条分类数据封装为RepairCategory实体类对象,全部存入 List 集合categoryList;

StringBuilder:高效拼接字符串,相比直接+拼接不会频繁创建新字符串,性能更好;
json.append(“[”):JSON 数组起始符号,最终格式是 [{},{},…]。

1,循环取出每一条报修分类实体 cat;
2.{ 代表单个分类 JSON 对象开始;
3.拼接键值对:
“id”:数字:分类编号;
“categoryName”:“文字”:分类名称(水电 / 门窗等);
4.} 闭合单个分类对象。

1.闭合Json数组
2.out.write():把拼接好的完整 JSON 字符串写入浏览器响应;
flush():强制刷新缓冲区,立刻把数据发送出去;
close():关闭输出流,释放 IO 资源。

实现效果:

相关新闻

  • 名表回收行情解读,2026福州实体门店,禹竞鉴定专业出价公道 - 奢品小当家
  • OpenCalib:自动驾驶多传感器空间对齐技术的深度探索与实践路径
  • 5步精通:Rufus启动盘制作实战完全手册

最新新闻

  • Elsevier Tracker:告别投稿焦虑,3分钟实现学术审稿状态实时可视化
  • MC9S08JM60 ADC误差分析与IIC协议精解:提升嵌入式测量与通信稳定性
  • 学习总结9
  • 2026海口名表回收行情解析!哪些款式保值抗跌?避坑指南速看 - 奢品小当家
  • Moteus:当开源精神遇见高性能无刷伺服控制
  • 2026年6月卧式潜水泵厂家推荐 - 多才菠萝

日新闻

  • 5分钟掌握Python进化算法:Geatpy高性能优化工具完全指南
  • Microchip 24AA044 EEPROM选型与应用全指南:从参数解析到实战编程
  • 华为的鸿蒙到底有多牛?为什么称作遥遥领先?

周新闻

  • 3步解锁iOS设备:applera1n激活锁绕过完全指南
  • 39 2026 人工智能证书终极盘点,普通人选 AI 证书可以从这些方向入手
  • Redis 暴露公网有多危险?从端口检查到补救步骤

月新闻

  • 【总结】入门篇:50句话让你记住架构核心概念
  • WeChatMsg技术方案解析:实现Mac微信数据自主管理的完整解决方案
  • WeChatMsg:革新性微信数据备份方案,打造你的专属数字记忆库

关于尧图

  • 公司简介
  • 团队介绍
  • 企业文化
  • 荣誉资质

服务项目

  • 定制开发
  • 电商建站
  • UI 设计
  • 运维服务

快速链接

  • 案例展示
  • 建站流程
  • 常见问题
  • 资讯中心

联系方式

  • 📍北京市朝阳区互联网产业园 A 座 10 层
  • 📞400-888-8888
  • ✉️contact@rkmt.cn
  • 🕐周一至周日 9:00-21:00

© 2024 北京尧图网络科技有限公司 版权所有 | 京 ICP 备 XXXXXXXX 号