请使用Mybatis相关知识完成以下要求 (1)根据两张表在数据库中创建学生表和班级表,并查询id为2的学生的信息。 (2)将id为4的学生的姓名修改为李雷,年龄修改为21。 (3)查询出二班所有学生的信息
时间: 2024-10-22 18:08:31 浏览: 15
首先,让我们分步骤来处理这些MyBatis相关的任务:
1. 创建学生表(Student)和班级表(Class):
```sql
CREATE TABLE Student (
id INT PRIMARY KEY,
name VARCHAR(50),
age INT
);
CREATE TABLE Class (
class_id INT PRIMARY KEY,
className VARCHAR(50)
);
```
2. 查询id为2的学生信息:
在`StudentMapper.xml`中配置SQL映射,例如:
```xml
<mapper namespace="com.example.StudentMapper">
<select id="getStudentById" resultType="com.example.Student">
SELECT * FROM Student WHERE id = #{id}
</select>
</mapper>
// 在Service层或Repository中调用
Student student = studentMapper.getStudentById(2);
```
这里的`com.example.Student`需要替换为实际的实体类名。
3. 更新id为4的学生信息:
```xml
<update id="updateStudent" parameterType="com.example.Student">
UPDATE Student SET name = #{name}, age = #{age} WHERE id = #{id}
</update>
Student updatedStudent = new Student();
updatedStudent.setId(4);
updatedStudent.setName("李雷");
updatedStudent.setAge(21);
studentMapper.updateStudent(updatedStudent);
```
4. 查询二班所有学生信息:
假设班级表(Class)有一个外键(student_id)关联到学生表(Student),则在`ClassMapper.xml`中添加查询:
```xml
<select id="selectAllStudentsOfClass" resultType="com.example.Student">
SELECT s.* FROM Student s
JOIN Class c ON s.id = c.student_id
WHERE c.className = '二班'
</select>
```
同样,在Service或Repository中调用对应的方法获取结果。
阅读全文