注意
通过java代码提供了动态标签 通过标签配置生成对应的2动态sql语句
1.查询场景
根据用户查询场景不同
生成不同配置
in 确定的数据 不能用子查询 效率极低 数据量不能太大
50条以内
1000条开线程,注以标号
in 用string时 注意‘’
${}硬拼接 容易sql注入
#{}当字符串 执行不了
动态查询多条
foreach
item
separator
open
if test
include refid
通过@param封装指定的key
多条删除通过foreach 和 动态标签
与一次查询几个场景类似
动态插入 添加场景
c从文件批量导入
集合使用
批量添加
<insert id="addUserByUserList">
insert into user(username,password,age) values
<foreach collection="addUserList" item="user" separator=",">
(#{user.username},#{user.password},#{user.age})
</foreach>
</insert>
动态修改语句
一个sql多个业务使用
<!--where替换前面AND SET替换后面and 页面不填把数据清掉-->
mybatis缓存,如果数据查询,mybatis缓存查询数据库时,查询相同的数据,会自动存入缓存,不多次查询数据库。
一级缓存,sqlsession级别缓存,一个sqlsession对应中生效。
在一次事务控制中 如过使用了相同的数据 直接从缓存加载。
长期保存:跨sqlsession级别缓存。
字典数据:常用的数据存入数据库。全局参数比如:系统级别菜单名,字典表
二级缓存没有开启。
配置一些数据。
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 在鹅厂做java开发是什么体验
· 百万级群聊的设计实践
· WPF到Web的无缝过渡:英雄联盟客户端的OpenSilver迁移实战
· 永远不要相信用户的输入:从 SQL 注入攻防看输入验证的重要性
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析