1.Mybatis是什么?
Mybatis是一个优秀的持久化框架,把jdbc操作数据库的过程进行了封装
我们只需要关注sql本身即可
2.传统JDBC开发存在的问题
频繁创建数据库连接对象
sql语句定义硬编码
3.为什么需要预编译
防止sql注入
4.#{}与$的区别
#{} 预编译,${}字符串拼接
5.在mapper中如何传递多个参数
使用List,Map,或者对象传递多个参数
6.Mybatis实现一对多,多对一
使用resultMap标签,映射结果集
一对多:resultMap collection ofType
多对一:resultMap association javaType
7.Mybatis的一级与二级缓存
一级缓存:
一级缓存是默认开启的,作用域是session,当session关闭或者执行增删改的时候缓存清空,不同sqlsession之间缓存互不影响
二级缓存:
mybatis默认是没有开启二级缓存的,需要我们手动开启,它是mapper级别的缓存
,同一个namespace下的所有操作语句,都影响着同一个缓存,即二级缓存被多个SqlSession共享,是一个全局的变量
Powered by:
博客园
Copyright © 2025 每天积极向上
Powered by .NET 9.0 on Kubernetes
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 零经验选手,Compose 一天开发一款小游戏!
· 因为Apifox不支持离线,我果断选择了Apipost!
· 通过 API 将Deepseek响应流式内容输出到前端