第十五周总结

一、本周工作内容
​​教师端后端开发​​
完成AdminController控制器开发(5个核心接口)
实现AdminServiceImpl服务层逻辑
编写约600行业务代码
​​关键功能实现​​
// 学生评分核心逻辑
@Override
public Result scoreStudent(String studentId, Integer points, String remark) {
try {
Users user = usersService.getById(studentId);
if (user == null) {
return Result.fail("学生不存在");
}

    // 更新学生积分
    user.setPoints(user.getPoints() + points);
    if (usersService.updateById(user)) {
        return Result.success("评分成功");
    }
    return Result.fail("评分失败");
} catch (Exception e) {
    e.printStackTrace();
    return Result.fail("评分失败");
}

}
​​数据统计功能​​
实现学生周目标活跃度统计
开发博客发布情况分析
完成学生分类数据查询
二、技术收获
​​MyBatis Plus应用​​
掌握复杂条件查询构建
QueryWrapper userWrapper = new QueryWrapper<>();
userWrapper.ne("student_id", "root")
.eq("class_name", className);
​​业务逻辑封装​​
学习统计数据分析方法
实践多表关联查询优化
掌握异常处理最佳实践
​​RESTful设计​​
规范API响应格式
合理设计查询参数
@GetMapping("/students/blog-stats")
public Result getStudentsBlogStats(@RequestParam(required = false) String className) {
// 业务逻辑
}
三、遇到的问题及解决
​​数据统计性能问题​​
​​现象​​:全表扫描导致查询慢
​​解决​​:添加数据库索引
CREATE INDEX idx_student_id ON goals(student_id);
​​空指针异常​​
​​现象​​:className参数可能为null
​​解决​​:添加判空处理
if (className != null && !className.trim().isEmpty()) {
userWrapper.eq("class_name", className);
}
​​积分更新并发问题​​
​​现象​​:多教师同时评分可能导致数据错误
​​解决​​:添加数据库乐观锁
user.setVersion(user.getVersion() + 1);
四、代码统计
模块 文件数 代码行数 耗时(h)
控制器层 1 150 4
服务实现层 1 450 8
单元测试 5 300 6
​​合计​​ ​​7​​ ​​900​​ ​​18​​
五、下周计划
​​系统联调​​
前后端接口对接
数据格式校验
交互体验优化
​​性能优化​​
添加查询缓存
优化统计SQL
实施分页查询
​​安全加固​​
添加权限验证
实施操作日志
加强参数校验

posted @ 2025-06-15 15:28  vivi_vimi  阅读(9)  评论(0)    收藏  举报