zoukankan      html  css  js  c++  java
  • mybatis的测试

    package com.heima.test;
    
    import com.heima.dao.UserDao;
    import com.heima.pojo.QueryVo;
    import com.heima.pojo.User;
    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.After;
    import org.junit.Before;
    import org.junit.Test;
    
    import java.io.InputStream;
    import java.util.ArrayList;
    import java.util.List;
    
    public class TestHeiMa {
    
        private InputStream in;
        private SqlSession sqlSession;
        private UserDao userDao;
    
        //初始化
        @Before
        public void init() throws Exception{
            //1、读取配置文件
            in = Resources.getResourceAsStream("mybatis-config.xml");
            //2、读取sqlsessionFactory
            SqlSessionFactory factory = new SqlSessionFactoryBuilder().build(in);
            //3、读取session对象
            sqlSession = factory.openSession();
            //4、获取dao的代理对象
            userDao = sqlSession.getMapper(UserDao.class);
        }
    
        //释放资源和提交事务
        @After
        public void destroy() throws Exception{
            //6、释放资源
            sqlSession.commit();
            sqlSession.close();
            in.close();
        }
    
        //查询所有
        @Test
        public void test(){
            //5、执行查询所有方法
            List<User> list = userDao.findAll();
            for(User user : list){
                System.out.println(user);
            }
        }
    
        //添加
        @Test
        public void add(){
            User user = new User();
            user.setUsername("cccc");
            user.setPassword("1521");
            user.setRealName("阿德");
            user.setSex("男");
            user.setAge(12);
            System.out.println("保存前"+user);
            userDao.insert(user);
            System.out.println("保存后"+user);
        }
    
        //修改
        @Test
        public void update(){
            User user = new User();
            user.setUserId(6);
            user.setUsername("myadd");
            user.setPassword("1521");
            user.setRealName("阿德");
            user.setSex("女");
            user.setAge(19);
            userDao.update(user);
        }
    
        //删除
        @Test
        public void delete(){
          userDao.delete(6);
        }
    
        //查询一个
        @Test
        public void findOne(){
            User user = userDao.findOne(1);
            System.out.println(user);
        }
    
        //模糊查询
        @Test
        public void findByName(){
            List<User> users = userDao.findByName("%s%");
            for(User user : users){
                System.out.println(user);
            }
        }
    
        //查询记录条数
        @Test
        public void findTotal(){
            Integer total = userDao.findTotal();
            System.out.println(total);
        }
    
        //使用实体类包装对象作为查询条件
        @Test
        public void queryVo(){
            QueryVo vo=new QueryVo();
            User user=new User();
            user.setUsername("%w%");
            vo.setUser(user);
            List<User> users = userDao.queryVo(vo);
            for(User u : users){
                System.out.println(u);
            }
        }
    
        //条件查询
        @Test
        public void findUserByCondition(){
            User user=new User();
            user.setUsername("wangwu");
            user.setSex("女");
            List<User> userByCondition = userDao.findUserByCondition(user);
            for (User user1 : userByCondition) {
                System.out.println(user1);
            }
        }
    
    
        /***
         * 使用foreach标签查询多个id的信息
         */
        @Test
        public void findUserIds(){
            QueryVo queryVo = new QueryVo();
            ArrayList<Integer> list = new ArrayList<>();
            list.add(1);
            list.add(3);
            list.add(2);
            queryVo.setIds(list);
    
            List<User> userIds = userDao.findUserIds(queryVo);
            for (User userId : userIds) {
                System.out.println(userId);
            }
        }
    
    }

    在bilibili看了老师的视频,讲解十分到位,自己的测试,若有错误,欢迎指正

  • 相关阅读:
    【Centos7】卸载OpenJDK
    linux 网络测试命令 长期更新
    【Centos7】hostnamectl 设置主机名
    【VMware Workstation】虚拟机静态IP NAT连接外部网络(局域网以及广域网)
    【VMware Workstation】虚拟机动态IP NAT连接外部网络(局域网以及广域网)
    【刷题】BZOJ 4698 Sdoi2008 Sandy的卡片
    【刷题】BZOJ 1717 [Usaco2006 Dec]Milk Patterns 产奶的模式
    【刷题】洛谷 P3809 【模板】后缀排序
    【刷题】BZOJ 2038 [2009国家集训队]小Z的袜子(hose)
    【刷题】洛谷 P2709 小B的询问
  • 原文地址:https://www.cnblogs.com/zhboke/p/14215536.html
Copyright © 2011-2022 走看看