美文网首页MyBatis学习(完)
MyBatis框架实现(06)执行SQL语句

MyBatis框架实现(06)执行SQL语句

作者: 郭艺宾 | 来源:发表于2019-08-11 03:10 被阅读2次

    书接上回,我们获取了mapper对象,可以开始执行SQL语句了,执行时我们调用的起点是从mapper中的方法开始的,流程如下:

    1、调用mapper中的方法

    2、mapper代理类调用sqlSession中的方法

    3、sqlSession调用执行器的方法

    4、执行器执行时,会调用mybatis中的statement处理SQL语句,将参数替换为实际值

    5、结果处理器resultHandler对象直接执行,并处理返回的结果

    上面是一个简略的流程,虽然简略,但是也能反映mybatis真正的处理流程。下面我们一步一步来实现,首先在sqlSession中定义查询方法:

    有了这个方法后,前面动态代理中的方法就可以调用了:

    下面要在执行器中创建查询方法让sqlSession调用:

    在sqlSession中就可以修改代码调用了:

    接下来是处理SQL语句的参数,我们前面定义SQL语句使用了一种简单的字符串替换的方式:

    所以这里我们直接使用String类的字符替换就行,下面创建参数处理类:

    在参数处理类中,我们获取数据库连接,然后对SQL语句进行预编译和执行,有了参数处理类,前面的执行器就可以完善了:

    下一步就是处理结果了,其实到这一步,SQL语句已经执行完了。

    代码地址:https://gitee.com/blueses/mybatis-demo 18

    相关文章

      网友评论

        本文标题:MyBatis框架实现(06)执行SQL语句

        本文链接:https://www.haomeiwen.com/subject/ubxvdctx.html