当前位置: 首页 > news >正文

mysql 存在的意义和运行原理

View Post

mysql 存在的意义和运行原理

  1.  mysql和hibernate的区别
    1. mysql的存在的意义在于将sql和java进行解耦,因为在现今的发展情况下,hibernate的全自动sql无法适应或者说对于sql的不可控是不能接受的
    2. mysql将sql语句书写移交给开发者
  2.  mysql的工作原理 三层
    1. 启动时扫描mapper接口,通过动态代理生成代理对象, 根据方法签名找到对应的Statement
    2. sqlSeesion根据对应的sqlid找到语句.并进行分析语法错误, sqlSeesion : mapper ->sql -->参数绑定PreparedStatement, 获取结果集,这里的执行器有 三种,simple , reuse, batch
  3. 框架的核心设计思想
    1. 主要是把sql的控制权交给开发者,实现sql可控

 

 

  mysql 中的日志问题:

  redo log : 重做日志

       undo log :回滚日志

       binlog : 二进制日志 存储引擎部分

 

mysql的缓存,mysql 有二级缓存 

一级缓存:   SqlSession 级别,默认开启,基于 HashMap 实现,key 为 SQL + 参数

二级缓存 :  Mapper 级别,跨 SqlSession 共享,默认关闭