03-MyBatis CRUD

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/linzhaoliangyan/article/details/88637806

* 封装冗余代码获取SqlSession

public class MyBatisUtils {
    private static SqlSessionFactory ssf;
    static {
        String resource="SqlMapConfig.xml";
        try {
            InputStream is = Resources.getResourceAsStream(resource);
            SqlSessionFactoryBuilder builder=new SqlSessionFactoryBuilder();
            ssf=builder.build(is);
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
    /**
     * @return
     * 1 获得SqlSessionFactory(重量级,只获取一次)
     */
    public static SqlSessionFactory getSqlSessionFactory(){
        return ssf;
    }

    /**
     * @return
     *  // 2 获得SqlSession
     */
    public static SqlSession getSqlSession(){
        return ssf.openSession();
    }

    /**
     * @param session
     *  // 3 提供关闭SqlSession的方法
     */
    public static void close(SqlSession session){
        session.close();
    }
}

 * 测试增删改查

/**
     * 查询
     */
    @Test
    public void test1(){
        // 获取SqlSession
        SqlSession sqlSession = MyBatisUtils.getSqlSession();
        List<User> users = sqlSession.selectList("hx.findUsers");
        for (User user:users) {
            System.out.println(user);
        }
        // 关闭SqlSession
        MyBatisUtils.close(sqlSession);
    }

    /**
     * 插入
     */
    @Test
    public void test2(){
        // 获取SqlSession
        SqlSession sqlSession = MyBatisUtils.getSqlSession();
        User user=new User();
        user.setUsername("xiaoxiao");
        user.setPsw("888");
        user.setSex('男');
        sqlSession.insert("hx.insertUser",user);
        sqlSession.commit();
        // 关闭SqlSession
        MyBatisUtils.close(sqlSession);
    }

    /**
     * 删除
     */
    @Test
    public void test3(){
        // 获取SqlSession
        SqlSession sqlSession = MyBatisUtils.getSqlSession();
        sqlSession.delete("hx.deleteUserById",5);
        sqlSession.commit();
        // 关闭SqlSession
        MyBatisUtils.close(sqlSession);
    }
    /**
     * 更新
     */
    @Test
    public void test4(){
        // 获取SqlSession
        SqlSession sqlSession = MyBatisUtils.getSqlSession();
        User user=new User();
        user.setId(6);
        user.setUsername("xiaohong");
        user.setPsw("123");
        sqlSession.update("updateUser",user);
        sqlSession.commit();
        // 关闭SqlSession
        MyBatisUtils.close(sqlSession);
    }

猜你喜欢

转载自blog.csdn.net/linzhaoliangyan/article/details/88637806