![](https://img-blog.csdnimg.cn/20190927151026427.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
Mybatis
文章平均质量分 84
mybatis
Mr. Cappuccino
这个作者很懒,什么都没留下…
展开
-
Mr. Cappuccino的第57杯咖啡——简单手写Mybatis大致原理
底层基于JDK动态代理技术实现原创 2023-08-02 21:24:00 · 859 阅读 · 0 评论 -
Mr. Cappuccino的第56杯咖啡——Mybatis拦截器
Mybatis允许使用者在映射语句执行过程中的某一些指定的节点进行拦截调用,通过织入拦截器,在不同节点修改一些执行过程中的关键属性,从而影响SQL的生成、执行和返回结果。Executor:拦截执行器的方法;ParameterHandler:拦截参数的处理;ResultSetHandler:拦截结果集的处理;StatementHandler:拦截Sql语法构建的处理;原创 2023-08-02 20:28:08 · 1158 阅读 · 0 评论 -
Mr. Cappuccino的第55杯咖啡——Mybatis一级缓存&二级缓存
缓存越小,查询速度越快,缓存数据越少缓存越大,查询速度越慢,缓存数据越多在多级缓存中,一般常见的是先查询一级缓存,再查询二级缓存,但在Mybatis中是先查询二级缓存,再查询一级缓存。在Mybatis中,BaseExecutor属于一级缓存执行器,CachingExecutor属于二级缓存执行器,二者采用了装饰器设计模式。原创 2023-08-02 05:47:10 · 573 阅读 · 0 评论 -
Mr. Cappuccino的第54杯咖啡——Mybatis运行原理
Mybatis运行原理Mybatis运行的三个阶段Mybatis运行原理图 Mybatis运行的三个阶段 初始化阶段:读取并解析XML配置文件和注解中的配置信息,创建配置对象,并完成各个模块的初始化工作,底层采用建造者模式; 代理封装阶段:封装iBatis的编程模型,使用mapper接口开发的初始化工作,底层采用JDK动态代理模式; 数据访问阶段:通过SqlSession完成SQL的解析、参数的映射、SQL的执行、结果的解析过程; Mybatis运行原理图原创 2023-08-01 01:48:53 · 392 阅读 · 0 评论 -
Mr. Cappuccino的第53杯咖啡——Mybatis源码分析
从入口一路点击进去可以发现底层是通过调用方法来读取resources目录下的mybatis-config.xml文件,并得到InputStream对象SqlSessionFactoryBuilder先是通过XMLConfigBuilder解析配置文件并将解析得到的配置装载到Configuration对象中,再将Configuration建造成DefaultSqlSessionFactory对象。这里采用了建造者设计模式。原创 2023-08-01 00:22:59 · 335 阅读 · 0 评论 -
Mr. Cappuccino的第52杯咖啡——Mybatis环境搭建与使用
Mybatis是一个用Java语言编写的持久层框架,它使用ORM实现了对结果集的封装。ORM(Object Relational Mapping):对象关系映射。简单来说,就是把数据库表和实体类及实体类的属性对应起来,让开发者操作实体类就能实现操作数据库表,它封装了JDBC操作的很多细节,使开发者只需要关注SQL语句本身,而无需关注注册驱动、创建连接等复杂过程。Mybatis中文网。原创 2023-07-26 23:03:58 · 335 阅读 · 0 评论