From 80581c2ff3bc03ae61bc837da3c74e226763d6de Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E5=90=95=E6=B7=BC?= <3426224518@qq.com>
Date: Tue, 19 May 2026 15:23:33 +0800
Subject: [PATCH] =?UTF-8?q?=E4=BB=BB=E5=8A=A110?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.idea/dataSources.xml | 12 +++++
.../grademanagement-MyBatisProject.iml | 1 +
.../src/com/ssm/entity/Course.java | 50 +++++++++++++++++++
.../src/com/ssm/mapper/CourseMapper.java | 10 ++++
.../src/com/ssm/mapper/CourseMapper.xml | 19 +++++++
.../src/com/ssm/test/TestMyBatis.java | 44 ++++++++++++++++
grademanagement-MyBatisProject/src/config.xml | 20 +++++++-
grademanagement/initial.sql | 22 +++++++-
grademanagement/src/applicationContext.xml | 19 +++++--
grademanagement/src/db.properties | 2 +-
10 files changed, 191 insertions(+), 8 deletions(-)
create mode 100644 .idea/dataSources.xml
create mode 100644 grademanagement-MyBatisProject/src/com/ssm/entity/Course.java
create mode 100644 grademanagement-MyBatisProject/src/com/ssm/mapper/CourseMapper.java
create mode 100644 grademanagement-MyBatisProject/src/com/ssm/mapper/CourseMapper.xml
create mode 100644 grademanagement-MyBatisProject/src/com/ssm/test/TestMyBatis.java
diff --git a/.idea/dataSources.xml b/.idea/dataSources.xml
new file mode 100644
index 0000000..fefc9eb
--- /dev/null
+++ b/.idea/dataSources.xml
@@ -0,0 +1,12 @@
+
+
+
+
+ mysql.8
+ true
+ com.mysql.cj.jdbc.Driver
+ jdbc:mysql://localhost:3306
+ $ProjectFileDir$
+
+
+
\ No newline at end of file
diff --git a/grademanagement-MyBatisProject/grademanagement-MyBatisProject.iml b/grademanagement-MyBatisProject/grademanagement-MyBatisProject.iml
index c90834f..fb8e866 100644
--- a/grademanagement-MyBatisProject/grademanagement-MyBatisProject.iml
+++ b/grademanagement-MyBatisProject/grademanagement-MyBatisProject.iml
@@ -7,5 +7,6 @@
+
\ No newline at end of file
diff --git a/grademanagement-MyBatisProject/src/com/ssm/entity/Course.java b/grademanagement-MyBatisProject/src/com/ssm/entity/Course.java
new file mode 100644
index 0000000..7c1e719
--- /dev/null
+++ b/grademanagement-MyBatisProject/src/com/ssm/entity/Course.java
@@ -0,0 +1,50 @@
+package com.ssm.entity;
+
+public class Course {
+ private Integer courseId; // 课程ID
+ private String courseName; // 课程名称
+ private Integer credit; // 学分(与数据库int类型匹配)
+ private String teacher; // 教师
+
+ public Integer getCourseId() {
+ return courseId;
+ }
+
+ public void setCourseId(Integer courseId) {
+ this.courseId = courseId;
+ }
+
+ public String getCourseName() {
+ return courseName;
+ }
+
+ public void setCourseName(String courseName) {
+ this.courseName = courseName;
+ }
+
+ public Integer getCredit() {
+ return credit;
+ }
+
+ public void setCredit(Integer credit) {
+ this.credit = credit;
+ }
+
+ public String getTeacher() {
+ return teacher;
+ }
+
+ public void setTeacher(String teacher) {
+ this.teacher = teacher;
+ }
+
+ @Override
+ public String toString() {
+ return "Course{" +
+ "courseId=" + courseId +
+ ", courseName='" + courseName + '\'' +
+ ", credit=" + credit +
+ ", teacher='" + teacher + '\'' +
+ '}';
+ }
+}
diff --git a/grademanagement-MyBatisProject/src/com/ssm/mapper/CourseMapper.java b/grademanagement-MyBatisProject/src/com/ssm/mapper/CourseMapper.java
new file mode 100644
index 0000000..92aa3da
--- /dev/null
+++ b/grademanagement-MyBatisProject/src/com/ssm/mapper/CourseMapper.java
@@ -0,0 +1,10 @@
+package com.ssm.mapper;
+
+import com.ssm.entity.Course;
+
+import java.util.List;
+
+public interface CourseMapper {
+ Course getCourseById(Integer courseId);
+ List getAllCourses();
+}
diff --git a/grademanagement-MyBatisProject/src/com/ssm/mapper/CourseMapper.xml b/grademanagement-MyBatisProject/src/com/ssm/mapper/CourseMapper.xml
new file mode 100644
index 0000000..16cee5c
--- /dev/null
+++ b/grademanagement-MyBatisProject/src/com/ssm/mapper/CourseMapper.xml
@@ -0,0 +1,19 @@
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/grademanagement-MyBatisProject/src/com/ssm/test/TestMyBatis.java b/grademanagement-MyBatisProject/src/com/ssm/test/TestMyBatis.java
new file mode 100644
index 0000000..e4df61b
--- /dev/null
+++ b/grademanagement-MyBatisProject/src/com/ssm/test/TestMyBatis.java
@@ -0,0 +1,44 @@
+package com.ssm.test;
+
+import com.ssm.entity.Course;
+import com.ssm.mapper.CourseMapper;
+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.InputStream;
+import java.util.List;
+
+public class TestMyBatis {
+ public static void main(String[] args) {
+ try {
+ // 使用正确的配置文件名 config.xml
+ SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(Resources.getResourceAsStream("config.xml"));
+ SqlSession sqlSession = sqlSessionFactory.openSession(true);
+ System.out.println("✅ MyBatis 连接成功!");
+
+ // 使用正确的变量名 sqlSession
+ CourseMapper courseMapper = sqlSession.getMapper(CourseMapper.class);
+
+ // 测试查询单个课程
+ System.out.println("\n=== 成员吕淼 查询课程ID=1 ===");
+ Course course = courseMapper.getCourseById(1);
+ System.out.println(course);
+
+ // 测试查询所有课程
+ System.out.println("\n=== 所有课程列表 ===");
+ List courses = courseMapper.getAllCourses();
+ for (Course c : courses) {
+ System.out.println(c);
+ }
+
+ sqlSession.close();
+ System.out.println("\n✅ 测试完成!");
+
+ } catch (Exception e) {
+ System.err.println("❌ 测试失败:");
+ e.printStackTrace();
+ }
+ }
+}
diff --git a/grademanagement-MyBatisProject/src/config.xml b/grademanagement-MyBatisProject/src/config.xml
index 3b5222d..0f2b5cd 100644
--- a/grademanagement-MyBatisProject/src/config.xml
+++ b/grademanagement-MyBatisProject/src/config.xml
@@ -4,5 +4,23 @@
"http://mybatis.org/dtd/mybatis-3-config.dtd">
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/grademanagement/initial.sql b/grademanagement/initial.sql
index 5bfbcfc..f01645c 100644
--- a/grademanagement/initial.sql
+++ b/grademanagement/initial.sql
@@ -1,9 +1,7 @@
-
SET NAMES utf8mb4;
SET FOREIGN_KEY_CHECKS = 0;
-
-- ----------------------------
-- Table structure for demo
-- ----------------------------
@@ -25,3 +23,23 @@ INSERT INTO `demo` VALUES (23, '4', '444');
INSERT INTO `demo` VALUES (24, '5', '555');
INSERT INTO `demo` VALUES (25, '6', '666');
INSERT INTO `demo` VALUES (26, '7', '777');
+
+-- ----------------------------
+-- Table structure for course
+-- ----------------------------
+DROP TABLE IF EXISTS `course`;
+CREATE TABLE `course` (
+ `courseId` int(11) NOT NULL AUTO_INCREMENT,
+ `coursename` varchar(100) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL,
+ `credit` int(11) NULL DEFAULT NULL,
+ `teacher` varchar(100) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
+ PRIMARY KEY (`courseId`) USING BTREE
+) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Compact;
+
+-- ----------------------------
+-- Records of course
+-- ----------------------------
+INSERT INTO `course` VALUES (1, '英语', 0, '张华');
+INSERT INTO `course` VALUES (2, 'C语言', 1, '李磊');
+
+SET FOREIGN_KEY_CHECKS = 1;
diff --git a/grademanagement/src/applicationContext.xml b/grademanagement/src/applicationContext.xml
index caba17c..79463c3 100644
--- a/grademanagement/src/applicationContext.xml
+++ b/grademanagement/src/applicationContext.xml
@@ -18,8 +18,9 @@
-
+ 注意:①方式二:
+ ②如果多个properties文件,可以使用location属性配置多个 -->
+
-
+
+
+
+
+
+
+
+
+
@@ -53,7 +62,7 @@
即接口类的对象,然后才能操作具体增删改查操作。
(2)Spring声明式事务非常强大,想让Spring管理事务。
注意:①SqlSessionFactoryBean类能创建出SqlSessionFactory对象,意味着容器一启动让容器帮我们创建SqlSessionFactory-->
-
+
+
+
diff --git a/grademanagement/src/db.properties b/grademanagement/src/db.properties
index 7449703..6066cf0 100644
--- a/grademanagement/src/db.properties
+++ b/grademanagement/src/db.properties
@@ -1,4 +1,4 @@
driver=com.mysql.cj.jdbc.Driver
-url=jdbc:mysql://localhost:3306/ssm_farm?serverTimezone=Asia/Shanghai
+url=jdbc:mysql://localhost:3306/ssm?serverTimezone=Asia/Shanghai
user=root
password=root
\ No newline at end of file