1.封装实体类封装数据库查询的课程信息
@Data public class CoursePublishVo { private String title; private String cover; private Integer lessonNum; private String subjectLevelOne; private String subjectLevelTwo; private String teacherName; private String price;//只用于显示 }
2.编写接口
CoursePublishVo getPublishInfo(String id);
3.编写mapper文件
<select id="getCoursePublishInfo" resultType="com.wang.eduservice.entity.vo.CoursePublishVo"> select ec.id, ec.title, ec.price, ec.lesson_num as lessonNum, ec.cover, et.name as teacherName, es1.title as subjectLevelOne, es2.title as subjectLevelTwo from edu_course ec left join edu_course_description ecd on ec.id=ecd.id left join edu_teacher et on ec.teacher_id =et.id left join edu_subject es1 on ec.subject_parent_id=es1.id left join edu_subject es2 on ec.subject_id=es2.id where ec.id=#{courseId} </select>
4.调用接口方法
@Override public CoursePublishVo getPublishInfo(String id) { CoursePublishVo coursePublishInfo = baseMapper.getCoursePublishInfo(id); return coursePublishInfo; }
5.controller调用
@GetMapping("getCoursePublishVo/{id}") public R getCoursePublishVo(@PathVariable String id) { CoursePublishVo coursePublishVo = eduCourseService.getPublishInfo(id); return R.ok().data("publishCourse", coursePublishVo); }