mybatis(实现乐观锁)

前言

  Mybatis和Hibernate一样,是一个优秀的持久层框架。已经说过很多次了,原生的jdbc操作存在大量的重复性代码(如注册驱动,创建连接,创建statement,结果集检测等)。框架的作用就是把这些繁琐的代码封装,这样可以让程序员专注于sql语句本身。

  mybatis通过XML或者注解的方式将要执行的sql语句配置起来,并通过java对象和sql语句映射成最终执行的sql语句。最终由Mybatis框架执行sql,并通过java对象和sql语句映射成最终执行的sql语句。最终由Mybatis框架执行sql,并将结果映射成java对象并返回。

  • Mybatis的执行流程
  1. mybatis配置文件,包括全局配置文件和mybatis映射文件,其中全局配置文件配置了数据源、事务等信息;映射文件配置了SQL执行相关的信息。
  2. mybatis通过读取配置文件信息(全局配置文件和映射文件),构造出sqlSessionFactory,即会话工厂。
  3. 通过SqlSessionFactory,可以创建SqlSession即会话。Mybatis是通过SqlSession来操作数据库的。
  4. SqlSession本身不能直接操作数据库,它是通过底层的Executor执行器接口来操作数据库的。Executor接口有两个实现类,一个是普通执行器,一个是缓存执行器(默认)。
  5. Exector执行器要处理的SQL信息是封装到一个底层对象MapperStatement中。该对象包括:SQL语句、输入参数映射信息、输出结果集映射信息。其中输入参数和输出结果的映射类型包括java的简单类型、HashMap集合对象,POJO对象类型。

github源码:https://github.com/Nickcenter/Mybatis-Optimistic-lock-.git

猜你喜欢

转载自www.cnblogs.com/nickup/p/9726433.html