课程名称:SpringBoot2.X + Vue + UniAPP,全栈开发医疗小程序
课程章节:第三章 使用Vue3.0+SpringBoot实现医护人员管理
课程讲师: 神思者
课程内容:
一、编写持久层代码
在DoctorDao.xml
文件中,声明SQL语句。
<select id="searchContent" parameterType="int" resultType="HashMap">
SELECT "photo",
"pid",
"birthday",
"uuid",
"hiredate",
"email",
"remark",
"tag",
"address",
"description"
FROM HOSPITAL.DOCTOR
WHERE "id" = ${id}
</select>
在com.example.hospital.api.db.dao
包DoctorDao
接口中,实现DAO方法。
public interface DoctorDao {
……
public HashMap searchContent(int id);
}
二、编写业务层代码
在com.example.hospital.api.service
包DoctorService
接口中,声明抽象方法。
public interface DoctorService {
……
public HashMap searchContent(int id);
}
在com.example.hospital.api.service.impl
包DoctorServiceImpl
类中,实现抽象方法。
@Service
@Slf4j
public class DoctorServiceImpl implements DoctorService {
……
@Override
public HashMap searchContent(int id) {
HashMap map = doctorDao.searchContent(id);
JSONArray tag = JSONUtil.parseArray(MapUtil.getStr(map, "tag"));
map.replace("tag", tag);
return map;
}
}
三、编写Web层代码
在com.example.hospital.api.controller.form
包创建SearchDoctorContentForm
类。
@Data
public class SearchDoctorContentForm {
@NotNull(message = "id不能为空")
@Min(value = 1, message = "id不能小于1")
private Integer id;
}
在com.example.hospital.api.controller
包DoctorController
类中,声明Web方法。
@RestController
@RequestMapping("/doctor")
public class DoctorController {
……
@PostMapping("/searchContent")
@SaCheckLogin
@SaCheckPermission(value = {"ROOT", "DOCTOR:SELECT"}, mode = SaMode.OR)
public R searchContent(@RequestBody @Valid SearchDoctorContentForm form) {
HashMap map = doctorService.searchContent(form.getId());
return R.ok(map);
}
}
课程收获:通过视频加文档结合的方式,学习了封装查询医生信息接口,期待后续学习!