首页 > 其他 > 详细

谷粒 | 14 |后端课程模块接口

时间:2021-02-15 09:57:11      阅读:30      评论:0      收藏:0      [点我收藏+]

添加课程信息

此节没有技术难点,重点在于如何实现表之间的关联

1、用代码生成器生成课程相关接口

之前已经配置好代码生成器,现在只需要添加映射表名

//一次可映射多个表
strategy.setInclude("edu_course","edu_course_description","edu_video","edu_chapter"); 

2、创建入参实体类 courseInfoVo

入参不需要课程实体类的所有信息,所以创建一个入参实体类专门接受入参

3、控制层

@Api(value = "课程控制器")
@RestController
@RequestMapping("/eduservice/course")
@CrossOrigin
public class EduCourseController {

    @Autowired
    private EduCourseService courseService;

    @ApiOperation(value = "添加课程信息")
    @PostMapping("addCourseInfo")
    public Result addCourseInfo(@RequestBody CourseInfoVo courseInfoVo){
        String id = courseService.saveCourseInfo(courseInfoVo);
        return Result.ok().data("courseId",id);
    }


}

4、业务层及实现类

@Service //注入IOC容器中
public class EduCourseServiceImpl extends ServiceImpl<EduCourseMapper, EduCourse> implements EduCourseService {

   // 当需要使用其他service接口时需要在此引入
   @Autowired
   private EduCourseDescriptionService courseDescriptionService;

    /**
     * 添加课程信息存入课程表,同时将描述信息存入课程描述表
     * @param courseInfoVo
     * @return
     */
    @Override
    public String saveCourseInfo(CourseInfoVo courseInfoVo) {
        EduCourse eduCourse = new EduCourse();
        //复制属性
        BeanUtils.copyProperties(courseInfoVo,eduCourse);

        //将课程信息存入课程表
        int insertNums = baseMapper.insert(eduCourse);       //insertNums表示影响行数
        if (insertNums == 0) {
            throw new MyException(20001,"添加课程信息失败");
        }

        //获取课程id
        String cid = eduCourse.getId();
        //获取课程描述信息,课程与课程描述:1对1关系
        EduCourseDescription eduCourseDescription = new EduCourseDescription();
        eduCourseDescription.setDescription(courseInfoVo.getDescription());

        /*
        将课程id赋给课程描述id,使其成为1对1关系,
        此步骤是将课程表和描述表关联起来的关键
         */
        eduCourseDescription.setId(cid);

        //存入课程描述信息
        courseDescriptionService.save(eduCourseDescription);

        return cid;
    }
}

谷粒 | 14 |后端课程模块接口

原文:https://www.cnblogs.com/silloutte/p/14402698.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!