【JavaEE】 01 MyBatis 配置(XML方式)

时间:2025-03-25 08:25:05
package person.lmy.test; import com.sun.xml.internal.ws.policy.privateutil.PolicyUtils; import org.apache.ibatis.io.Resources; import org.apache.ibatis.session.RowBounds; import org.apache.ibatis.session.SqlSession; import org.apache.ibatis.session.SqlSessionFactory; import org.apache.ibatis.session.SqlSessionFactoryBuilder; import org.junit.After; import org.junit.Before; import org.junit.Test; import person.lmy.dao.UserDao; import person.lmy.domain.UerResult; import person.lmy.domain.User; import java.io.IOException; import java.io.InputStream; import java.sql.Timestamp; import java.util.List; public class MyBatisTest { private InputStream in; private SqlSessionFactoryBuilder builder; private SqlSessionFactory factory; private SqlSession session; private UserDao userDao; @Before public void init() throws IOException { in=Resources.getResourceAsStream("");//资源图纸 builder = new SqlSessionFactoryBuilder();//建造者 factory = builder.build(in);//建造者建立工程 session = factory.openSession();//工程模式生产session userDao = session.getMapper(UserDao.class);//代理模式得到Mapper } /*查询全部*/ @Test public void testFindAll(){ List<User> users = userDao.findAll(); for(User user:users){ System.out.println(user); } } /*条件查询*/ @Test public void testFindById(){ System.out.println("查询到"+userDao.findById(3)); } /*模糊查询*/ @Test public void testFindByName(){ List<User> users = userDao.findByName("%吴%"); for(User user:users){ System.out.println(user); } } /*聚合查询*/ @Test public void testFindTotal(){ System.out.println(userDao.findTotal()); } /*分页查询*/ @Test public void testFindByRowBounds(){ RowBounds rowBounds = new RowBounds(0,3); List<User> users = userDao.findByRowBounds(rowBounds); for(User user:users){ System.out.println(user); } } /*resultMap 元素*/ @Test public void testFindAllRusult(){ List<UerResult> users = userDao.findAllResult(); for (UerResult user:users){ System.out.println(user); } } /*多参数传递*/ @Test public void testFindByTitleAuthor(){ User userparam = new User(); userparam.setTitle("%西%"); userparam.setAuthor("%恩%"); List<User> users = userDao.findByTitleAuthor(userparam); for(User user:users){ System.out.println(user); } } /*添加一条信息*/ @Test public void testAddUser(){ User user = new User(); user.setAuthor("高尔基"); user.setTitle("童年"); user.setPublication_date(Timestamp.valueOf("2022-03-21 21:33:18.0")); user.setPrice(89); System.out.println("增加"+userDao.addUser(user)+"条记录"); System.out.println(user); session.commit(); } /*修改信息*/ @Test public void testUpdateUser(){ User user = new User(); user.setPrice(70); user.setTitle("红楼梦"); System.out.println("修改"+userDao.updateUser(user)+"条记录"); } /*删除信息*/ @Test public void testDelUser(){ System.out.println("删除"+userDao.delUser(8)+"条记录"); } @After public void destory() throws IOException { session.commit(); session.close(); in.close(); } }