package service.impl; import dao.TeacherDao; // 导入 TeacherDao 接口,处理教师数据访问。 import domain.Course; // 导入 Course 类,表示课程信息。 import domain.Teacher; // 导入 Teacher 类,表示教师信息。 import dao.impl.TeacherDaoImpl; // 导入 TeacherDaoImpl 类,实际的教师数据访问实现。 import service.TeacherService; // 导入 TeacherService 接口,定义教师服务层的业务逻辑。 import java.util.List; /** * TeacherServiceImpl 类实现了 TeacherService 接口,负责教师相关业务逻辑的处理。 * 该类通过调用 TeacherDao 实现与数据库的交互,提供了教师登录、信息更新、密码修改、课程管理等功能。 */ public class TeacherServiceImpl implements TeacherService { private TeacherDao dao = new TeacherDaoImpl(); // 实例化 TeacherDaoImpl 对象,用于操作教师数据。 /** * 教师登录验证。 * * @param teacher 教师对象,包含教师 ID 和密码。 * @return 如果验证通过,返回教师信息;否则返回 null。 */ @Override public Teacher login(Teacher teacher) { return dao.findTeacheridAndPassword(teacher.getT_id(), teacher.getT_password()); // 调用 DAO 层方法进行登录验证 } /** * 查询所有教师信息。 * * @return 返回所有教师的列表。 */ @Override public List findAll() { return dao.findAll(); // 调用 DAO 层的 findAll 方法获取所有教师信息 } /** * 查询教师自己的可选课程。 * * @param T_id 教师 ID。 * @return 返回该教师教授的所有可选课程信息。 */ @Override public List findMySelfOptionalCourse(String T_id) { return dao.findMySelfOptionalCourse(T_id); // 调用 DAO 层方法获取该教师的可选课程 } /** * 根据课程 ID 查询可选课程信息。 * * @param cid 课程 ID。 * @return 返回指定课程的详细信息。 */ @Override public Course findOptionalCourseByCourseId(String cid) { return dao.findOptionalCourseByCourseId(cid); // 调用 DAO 层方法根据课程 ID 查询课程信息 } /** * 更新课程信息。 * * @param updateCourse 课程对象,包含更新后的课程信息。 */ @Override public void updateCourseInfo(Course updateCourse) { dao.updateCourseInfo(updateCourse); // 调用 DAO 层方法更新课程信息 } /** * 删除课程信息。 * * @param cid 课程 ID。 */ @Override public void deleteCourseById(String cid) { dao.deleteCourseById(cid); // 调用 DAO 层方法删除指定课程 } /** * 更新教师密码。 * * @param teacherid 教师 ID。 * @param newpassword 新密码。 */ @Override public void updatePassword(String teacherid, String newpassword) { dao.updatePassword(teacherid, newpassword); // 调用 DAO 层方法更新教师密码 } /** * 根据教师 ID 查询教师信息。 * * @param teacher 教师对象,包含教师 ID。 * @return 返回指定教师的详细信息。 */ @Override public Teacher findTeacherById(Teacher teacher) { return dao.findTeacherById(teacher.getT_id()); // 调用 DAO 层方法根据教师 ID 查询教师信息 } /** * 添加教师的完整信息。 * * @param updateTeacher 教师对象,包含完整的教师信息。 */ @Override public void addTeacherAllInfo(Teacher updateTeacher) { dao.addTeacherAllInfo(updateTeacher); // 调用 DAO 层方法添加教师的完整信息 } /** * 删除教师信息。 * * @param teacherid 教师 ID。 */ @Override public void deleteTeacherById(String teacherid) { dao.deleteTeacherById(teacherid); // 调用 DAO 层方法删除指定教师 } /** * 更新教师信息。 * * @param updateTeacher 教师对象,包含更新后的教师信息。 */ @Override public void updateInfo(Teacher updateTeacher) { dao.updateInfo(updateTeacher); // 调用 DAO 层方法更新教师信息 } }