diff --git a/grademanagement-MyBatisProject/src/com/ssm/mapper/DepartmentMapper.java b/grademanagement-MyBatisProject/src/com/ssm/mapper/DepartmentMapper.java index 9cc743e..b98e61c 100644 --- a/grademanagement-MyBatisProject/src/com/ssm/mapper/DepartmentMapper.java +++ b/grademanagement-MyBatisProject/src/com/ssm/mapper/DepartmentMapper.java @@ -13,4 +13,7 @@ public interface DepartmentMapper { void updateDepartment(Department department); // 删除院系 void deleteDepartment(Integer deptId); + //resultMap方式查询 + Department getDepartmentMapById(Integer deptId); + List getDepartmentMapAll(); } \ No newline at end of file diff --git a/grademanagement-MyBatisProject/src/com/ssm/mapper/DepartmentMapper.xml b/grademanagement-MyBatisProject/src/com/ssm/mapper/DepartmentMapper.xml index c76e6bd..653fbde 100644 --- a/grademanagement-MyBatisProject/src/com/ssm/mapper/DepartmentMapper.xml +++ b/grademanagement-MyBatisProject/src/com/ssm/mapper/DepartmentMapper.xml @@ -3,9 +3,11 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> + + @@ -27,4 +29,21 @@ DELETE FROM department WHERE dept_id = #{deptId} + + + + + + + + + + + + + \ No newline at end of file diff --git a/grademanagement-MyBatisProject/src/com/ssm/mapper/MajorMapper.java b/grademanagement-MyBatisProject/src/com/ssm/mapper/MajorMapper.java index 92ef000..dca2d46 100644 --- a/grademanagement-MyBatisProject/src/com/ssm/mapper/MajorMapper.java +++ b/grademanagement-MyBatisProject/src/com/ssm/mapper/MajorMapper.java @@ -1,4 +1,5 @@ package com.ssm.mapper; +import com.ssm.entity.Department; import com.ssm.entity.Major; import java.util.List; @@ -11,4 +12,7 @@ public interface MajorMapper { void updateMajor(Major major); // 删除专业 void deleteMajor(Integer majorId); + //resultMap方式查询 + Major getMajorMapById(Integer majorId); + List getMajorMapAll(); } \ No newline at end of file diff --git a/grademanagement-MyBatisProject/src/com/ssm/mapper/MajorMapper.xml b/grademanagement-MyBatisProject/src/com/ssm/mapper/MajorMapper.xml index bf75ad4..04ec237 100644 --- a/grademanagement-MyBatisProject/src/com/ssm/mapper/MajorMapper.xml +++ b/grademanagement-MyBatisProject/src/com/ssm/mapper/MajorMapper.xml @@ -27,4 +27,20 @@ DELETE FROM major WHERE major_id = #{majorId} + + + + + + + + + + + + \ No newline at end of file diff --git a/grademanagement-MyBatisProject/src/com/ssm/mapper/NoticeMapper.java b/grademanagement-MyBatisProject/src/com/ssm/mapper/NoticeMapper.java index 74d8c01..0d7ba15 100644 --- a/grademanagement-MyBatisProject/src/com/ssm/mapper/NoticeMapper.java +++ b/grademanagement-MyBatisProject/src/com/ssm/mapper/NoticeMapper.java @@ -1,4 +1,5 @@ package com.ssm.mapper; +import com.ssm.entity.Department; import com.ssm.entity.Notice; import java.util.List; @@ -11,4 +12,7 @@ public interface NoticeMapper { void updateNotice(Notice notice); // 删除公告 void deleteNotice(Integer noticeId); + //resultMap方式查询 + Notice getNoticeMapById(Integer noticeId); + List getNoticeMapAll(); } \ No newline at end of file diff --git a/grademanagement-MyBatisProject/src/com/ssm/mapper/NoticeMapper.xml b/grademanagement-MyBatisProject/src/com/ssm/mapper/NoticeMapper.xml index 3867705..087be9b 100644 --- a/grademanagement-MyBatisProject/src/com/ssm/mapper/NoticeMapper.xml +++ b/grademanagement-MyBatisProject/src/com/ssm/mapper/NoticeMapper.xml @@ -28,4 +28,21 @@ DELETE FROM notice WHERE notice_id = #{noticeId} + + + + + + + + + + + + + \ No newline at end of file diff --git a/grademanagement-MyBatisProject/src/com/ssm/mapper/StudentMapper.java b/grademanagement-MyBatisProject/src/com/ssm/mapper/StudentMapper.java index 591d166..889f894 100644 --- a/grademanagement-MyBatisProject/src/com/ssm/mapper/StudentMapper.java +++ b/grademanagement-MyBatisProject/src/com/ssm/mapper/StudentMapper.java @@ -1,4 +1,5 @@ package com.ssm.mapper; +import com.ssm.entity.Department; import com.ssm.entity.Student; import java.util.List; @@ -11,4 +12,7 @@ public interface StudentMapper { void updateStudent(Student student); // 删除学生 void deleteStudent(Integer studentId); + //resultMap方式查询 + Student getStudentMapById(Integer studentId); + List getStudentMapAll(); } \ No newline at end of file diff --git a/grademanagement-MyBatisProject/src/com/ssm/mapper/StudentMapper.xml b/grademanagement-MyBatisProject/src/com/ssm/mapper/StudentMapper.xml index 9ad5db2..cbd52be 100644 --- a/grademanagement-MyBatisProject/src/com/ssm/mapper/StudentMapper.xml +++ b/grademanagement-MyBatisProject/src/com/ssm/mapper/StudentMapper.xml @@ -29,4 +29,22 @@ DELETE FROM student WHERE student_id = #{studentId} + + + + + + + + + + + + + + \ No newline at end of file diff --git a/grademanagement-MyBatisProject/src/com/ssm/test/TestMyBatisQueryResultMap.java b/grademanagement-MyBatisProject/src/com/ssm/test/TestMyBatisQueryResultMap.java new file mode 100644 index 0000000..9a1a204 --- /dev/null +++ b/grademanagement-MyBatisProject/src/com/ssm/test/TestMyBatisQueryResultMap.java @@ -0,0 +1,83 @@ +package com.ssm.test; + +import com.ssm.entity.Department; +import com.ssm.entity.Major; +import com.ssm.entity.Student; +import com.ssm.entity.Notice; +import com.ssm.mapper.DepartmentMapper; +import com.ssm.mapper.MajorMapper; +import com.ssm.mapper.StudentMapper; +import com.ssm.mapper.NoticeMapper; +import org.apache.ibatis.io.Resources; +import org.apache.ibatis.session.SqlSession; +import org.apache.ibatis.session.SqlSessionFactory; +import org.apache.ibatis.session.SqlSessionFactoryBuilder; + +import java.io.Reader; +import java.util.List; + +public class TestMyBatisQueryResultMap { + public static void main(String[] args) throws Exception { + // 加载配置文件 + Reader reader = Resources.getResourceAsReader("config.xml"); + SqlSessionFactory factory = new SqlSessionFactoryBuilder().build(reader); + SqlSession sqlSession = factory.openSession(); + + // 四个模块 resultMap 查询测试 + testDeptResultMap(sqlSession); + testMajorResultMap(sqlSession); + testStudentResultMap(sqlSession); + testNoticeResultMap(sqlSession); + + sqlSession.close(); + reader.close(); + } + + // 院系 resultMap 查询 + private static void testDeptResultMap(SqlSession sqlSession) { + DepartmentMapper mapper = sqlSession.getMapper(DepartmentMapper.class); + Department dept = mapper.getDepartmentMapById(1); + System.out.println("===== 院系 resultMap 按ID查询 ====="); + System.out.println(dept); + + List deptList = mapper.getDepartmentMapAll(); + System.out.println("\n===== 院系 resultMap 查询所有 ====="); + deptList.forEach(System.out::println); + } + + // 专业 resultMap 查询 + private static void testMajorResultMap(SqlSession sqlSession) { + MajorMapper mapper = sqlSession.getMapper(MajorMapper.class); + Major major = mapper.getMajorMapById(1); + System.out.println("\n===== 专业 resultMap 按ID查询 ====="); + System.out.println(major); + + List majorList = mapper.getMajorMapAll(); + System.out.println("\n===== 专业 resultMap 查询所有 ====="); + majorList.forEach(System.out::println); + } + + // 学生 resultMap 查询 + private static void testStudentResultMap(SqlSession sqlSession) { + StudentMapper mapper = sqlSession.getMapper(StudentMapper.class); + Student student = mapper.getStudentMapById(1); + System.out.println("\n===== 学生 resultMap 按ID查询 ====="); + System.out.println(student); + + List studentList = mapper.getStudentMapAll(); + System.out.println("\n===== 学生 resultMap 查询所有 ====="); + studentList.forEach(System.out::println); + } + + // 公告 resultMap 查询 + private static void testNoticeResultMap(SqlSession sqlSession) { + NoticeMapper mapper = sqlSession.getMapper(NoticeMapper.class); + Notice notice = mapper.getNoticeMapById(1); + System.out.println("\n===== 公告 resultMap 按ID查询 ====="); + System.out.println(notice); + + List noticeList = mapper.getNoticeMapAll(); + System.out.println("\n===== 公告 resultMap 查询所有 ====="); + noticeList.forEach(System.out::println); + } +} \ No newline at end of file diff --git a/grademanagement-MyBatisProject/src/config.xml b/grademanagement-MyBatisProject/src/config.xml index 69dbb96..60c5a4e 100644 --- a/grademanagement-MyBatisProject/src/config.xml +++ b/grademanagement-MyBatisProject/src/config.xml @@ -3,6 +3,8 @@ PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://mybatis.org/dtd/mybatis-3-config.dtd"> + + @@ -12,10 +14,10 @@ - - - - + + + + diff --git a/grademanagement-MyBatisProject/src/db.properties b/grademanagement-MyBatisProject/src/db.properties new file mode 100644 index 0000000..dee193b --- /dev/null +++ b/grademanagement-MyBatisProject/src/db.properties @@ -0,0 +1,4 @@ +driver=com.mysql.cj.jdbc.Driver +url=jdbc:mysql://localhost:3306/ssm_score_sys?serverTimezone=Asia/Shanghai&useSSL=false&allowPublicKeyRetrieval=true +user=root +password=123456 \ No newline at end of file