zoukankan      html  css  js  c++  java
  • mybatis介绍

      mybatis是apache旗下的一个开源项目ibatis,2010年这个项目有apache software foundation迁移到了goole code

    并且改名为mybatis,2013年有迁移到了github上。

      mybatis是一个优秀的持久层框架,他对jdbc的操作数据库的过程进行封装,是开发者只需要关注SQL本身,而不需要花费过多的精力去处理例如注册驱动,创建connection,创建statement,手动设置参数,结果检索等jdbc繁琐的过程代码。

      mybatis通过xml或者注解的凡是,将要执行的各种statement配置起来,并且通过java对象和statement中的sql进行映射生成最终执行的ssql语句,最后由mybatis框架执行sql并且将结果映射成java对象返回。

    mybatis架构

    1、mybatis配置

    mapper.xml文件即sql映射文件,文件中配置了操作数据库的sql语句。此文件需要在SqlMapConfig.xml中加载。

    2、通过mybatis环境等配置信息构造SqlSessionFactory即会话工厂

    3、由会话工厂创建sqlSession即会话,操作数据库需要通过sqlSession进行。

    4、mybatis底层自定义了Executor执行器接口操作数据库,Executor接口有两个实现,一个是基本执行器、一个是缓存执行器。

    5、Mapped Statement也是mybatis一个底层封装对象,它包装了mybatis配置信息及sql映射信息等。mapper.xml文件中一个sql对应一个Mapped Statement对象,sql的id即是Mapped statement的id。

    6、Mapped Statement对sql执行输入参数进行定义,包括HashMap、基本类型、pojo,Executor通过Mapped Statement在执行sql前将输入的java对象映射至sql中,输入参数映射就是jdbc编程中对preparedStatement设置参数。

    7、Mapped Statement对sql执行输出结果进行定义,包括HashMap、基本类型、pojo,Executor通过Mapped Statement在执行sql后将输出结果映射至java对象中,输出结果映射过程相当于jdbc编程中对结果的解析处理过程。

      

  • 相关阅读:
    A Node Influence Based Label Propagation Algorithm for Community detection in networks 文章算法实现的疑问
    Fast Newman-FN算法以及模块度定义介绍
    Label Propagation Algorithm LPA 标签传播算法解析及matlab代码实现
    设计一个smartnic
    Intel GEN11 GPU
    Intel GEN9 GPU
    Shared Virtual Memory (SVM) Functions
    connect via ssh to virtualbox guest vm without knowing ip address
    smartnic
    技术精品翻译
  • 原文地址:https://www.cnblogs.com/panxinqi/p/8366984.html
Copyright © 2011-2022 走看看