Mybatis面试17问

本文详细解答了Mybatis的相关面试问题,包括Mybatis的定义、优缺点、与Hibernate的区别,以及动态SQL、缓存、插件运行原理等方面。重点讨论了#{}与${}的区别,映射文件中的id管理,多参数传递,一对多和一对一的实现,以及Mybatis的分页方式等。
摘要由CSDN通过智能技术生成

Mybatis关键面试题

1. Mybatis是什么?

  • Mybatis是一个半自动ORM框架,它内部封装了JDBC、加载驱动、创建连接、创建statement等繁琐的过程,开发者只需关注如何编写SQL语句即可,可严格控制SQL执行性能,灵活度高。

2. Mybatis的优缺点

优点:

  • 基于SQL语句编程,相当灵活,不会对应用程序或数据库设计造成影响;SQL语句写在xml文件里,解除与程序代码的耦合,便于管理;提供xml标签,支持编写动态SQL语句。
  • 与JDBC相比,减少50%代码量,消除大量冗余代码。
  • 很好地与各种数据库兼容,只要JDBC支持的数据库Mybatis也支持。
  • 能够与Spring很好地集成。
  • 提供映射标签,支持Java对象与数据库的ORM字段关系映射。

缺点:

  • SQL语句编写工作量大。
  • SQL语句依赖数据库,导致数据库移植性差。

3. 为什么Mybatis是半自动ORM映射框架

  • Mybatis在查询关联对象或者关联集合对象时,需要开发者手动编写SQL完成。而Hibernate是全自动ORM映射框架。

4. Hibernate与Mybatis的区别

相同点ÿ

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值