码迷,mamicode.com
首页 > 其他好文 > 详细

Mybatis自定义框架基础学习篇

时间:2020-07-06 13:13:33      阅读:58      评论:0      收藏:0      [点我收藏+]

标签:创建   tsql   build   映射   out   find   ret   数据库   new   

1,自定义Mybatis框架接口分析

技术图片

2,入门基础框架的分析

技术图片

MybatisUtils代码:

public class MybatisUtils {
    private static SqlSessionFactory sqlSessionFactory;
    static {
        String resource = "SqlMapConfig.xml";
        InputStream inputStream = null;
        try {
            inputStream = Resources.getResourceAsStream(resource);
            sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);
        } catch (IOException e) {
            e.printStackTrace();
        }finally {
            try {
                inputStream.close();
            } catch (IOException e) {
                e.printStackTrace();
            }
        }
    }
//    既然有了 SqlSessionFactory,顾名思义,我们可以从中获得 SqlSession 的实例。
//    SqlSession 提供了在数据库执行 SQL 命令所需的所有方法。
//    你可以通过 SqlSession 实例来直接执行已映射的 SQL 语句

    public static SqlSession getSqlSession(){
        return sqlSessionFactory.openSession();
    }
}

MybatisTest测试类代码

public class MybatisTest {
    public static void main(String[] args) throws IOException {
        // 第一步:读取配置文件
        //InputStream in = Resources.getResourceAsStream("SqlMapConfig.xml");
        // 第二步:创建SqlSessionFactory工厂
        // SqlSessionFactoryBuilder builder = new SqlSessionFactoryBuilder();
        // SqlSessionFactory factory = builder.build(in);
        //简化后
        //SqlSessionFactory factory = new SqlSessionFactoryBuilder().build(in);

//---------------------------------------------------------------------------
//   对以上代码进行封装到MybatisUtils后,代码更简洁

        // 第三步:创建SqlSession
        SqlSession session = MybatisUtils.getSqlSession();
        // 第四步:创建Dao接口的代理对象
        UserDao userDao = session.getMapper(UserDao.class);
        // 第五步:执行dao中的方法
        List<User> users = userDao.findAll();
        for (User user : users) {
            System.out.println(user);
        }
        // 第六步:释放资源
        session.close();

    }
}

使用注解开发代码

public interface UserDao {
    @Select("select * from user")
    List<User> findAll();
}

使用xml配置文件开发代码

<mapper namespace="com.xxx.dao.UserDao">
<!--    配置查询所有-->
    <select id="findAll" resultType="com.xxx.domain.User">
        select * from user ;
    </select>
</mapper>

两者的对比

技术图片

Mybatis自定义框架基础学习篇

标签:创建   tsql   build   映射   out   find   ret   数据库   new   

原文地址:https://www.cnblogs.com/like3ong/p/13254135.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!