持续创作,加速成长!这是我参与「掘金日新计划 · 10 月更文挑战」的第1天,点击查看活动详情
CStudentTest测试类
import com.itheima.CCollegeMapper;
import com.itheima.CStudentMapper;
import com.itheima.pojo.College;
import com.itheima.pojo.Student;
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 org.junit.Test;
import java.io.IOException;
import java.io.InputStream;
import java.util.Date;
import java.util.List;
public class CStudentTest {
@Test
public void TestInsert() throws IOException {
InputStream is = Resources.getResourceAsStream("mybatis-config.xml");
//获得SqlSessionFactoryBuilder对象
SqlSessionFactoryBuilder sqlSessionFactoryBuilder = new SqlSessionFactoryBuilder();
//获得SqlSessionFactory对象
SqlSessionFactory sqlSessionFactory = sqlSessionFactoryBuilder.build(is);
SqlSession sqlSession = sqlSessionFactory.openSession(true);
CStudentMapper mapper = sqlSession.getMapper(CStudentMapper.class);
Date date = new Date();
Student student = new Student(null,2,"王三",date,null);
mapper.insertStudent(student);
sqlSession.close();
}
@Test
public void TestUpdate() throws IOException {
InputStream is = Resources.getResourceAsStream("mybatis-config.xml");
//获得SqlSessionFactoryBuilder对象
SqlSessionFactoryBuilder sqlSessionFactoryBuilder = new SqlSessionFactoryBuilder();
//获得SqlSessionFactory对象
SqlSessionFactory sqlSessionFactory = sqlSessionFactoryBuilder.build(is);
SqlSession sqlSession = sqlSessionFactory.openSession(true);
CStudentMapper mapper = sqlSession.getMapper(CStudentMapper.class);
Date date = new Date();
Student student = new Student(1,1,"王qi",date,"2");
mapper.updateStudent(student);
sqlSession.close();
}
@Test
public void TestDelete() throws IOException {
InputStream is = Resources.getResourceAsStream("mybatis-config.xml");
//获得SqlSessionFactoryBuilder对象
SqlSessionFactoryBuilder sqlSessionFactoryBuilder = new SqlSessionFactoryBuilder();
//获得SqlSessionFactory对象
SqlSessionFactory sqlSessionFactory = sqlSessionFactoryBuilder.build(is);
SqlSession sqlSession = sqlSessionFactory.openSession(true);
CStudentMapper mapper = sqlSession.getMapper(CStudentMapper.class);
mapper.deleteStudentById(3);
sqlSession.close();
}
@Test
public void TestGetStudent() throws IOException {
InputStream is = Resources.getResourceAsStream("mybatis-config.xml");
//获得SqlSessionFactoryBuilder对象
SqlSessionFactoryBuilder sqlSessionFactoryBuilder = new SqlSessionFactoryBuilder();
//获得SqlSessionFactory对象
SqlSessionFactory sqlSessionFactory = sqlSessionFactoryBuilder.build(is);
SqlSession sqlSession = sqlSessionFactory.openSession(true);
CStudentMapper mapper = sqlSession.getMapper(CStudentMapper.class);
Student student = mapper.StudentByStuNo(1);
System.out.println(student);
sqlSession.close();
}
@Test
public void TestGetStudentList() throws IOException {
InputStream is = Resources.getResourceAsStream("mybatis-config.xml");
//获得SqlSessionFactoryBuilder对象
SqlSessionFactoryBuilder sqlSessionFactoryBuilder = new SqlSessionFactoryBuilder();
//获得SqlSessionFactory对象
SqlSessionFactory sqlSessionFactory = sqlSessionFactoryBuilder.build(is);
SqlSession sqlSession = sqlSessionFactory.openSession(true);
CStudentMapper mapper = sqlSession.getMapper(CStudentMapper.class);
List<Student> list= mapper.getStudentList();
list.forEach(System.out::println);
sqlSession.close();
}
@Test
public void TestGetStudentAndCollege() throws IOException {
InputStream is = Resources.getResourceAsStream("mybatis-config.xml");
//获得SqlSessionFactoryBuilder对象
SqlSessionFactoryBuilder sqlSessionFactoryBuilder = new SqlSessionFactoryBuilder();
//获得SqlSessionFactory对象
SqlSessionFactory sqlSessionFactory = sqlSessionFactoryBuilder.build(is);
SqlSession sqlSession = sqlSessionFactory.openSession(true);
CStudentMapper mapper = sqlSession.getMapper(CStudentMapper.class);
List<Student> list = mapper.getStudentAndCollegeByStuNo();
list.forEach(System.out::println);
sqlSession.close();
}
@Test
public void TestGetCollegeAndStudent() throws IOException {
InputStream is = Resources.getResourceAsStream("mybatis-config.xml");
//获得SqlSessionFactoryBuilder对象
SqlSessionFactoryBuilder sqlSessionFactoryBuilder = new SqlSessionFactoryBuilder();
//获得SqlSessionFactory对象
SqlSessionFactory sqlSessionFactory = sqlSessionFactoryBuilder.build(is);
SqlSession sqlSession = sqlSessionFactory.openSession(true);
CCollegeMapper mapper = sqlSession.getMapper(CCollegeMapper.class);
List<College> list = mapper.getStudentAndCollege();
list.forEach(System.out::println);
sqlSession.close();
}
}
接口类
package com.itheima;
import com.itheima.pojo.College;
import org.apache.ibatis.annotations.*;
import java.util.List;
public interface CCollegeMapper {
@Select("select * from college")
@Results({
@Result(id = true,column = "id",property = "id"),
@Result(column = "coName",property = "coName"),
@Result(column = "temp",property = "temp"),
@Result(property = "stuList",javaType = List.class,
column = "id", many=@Many(select = "com.itheima.CStudentMapper.getCollegeAndStudentByStuNo"))
})
List<College> getStudentAndCollege();
@Select("select * from college where id=#{id}")
College getCollegeById(@Param("id") Integer id);
}
```