每日一学--mybatis--05
mybatis查询方法resultType里面放的是数据类型的位置,假如该接口的返回值是Integer,那么resultType里面要填的就是java.lang.Integer或者Integer甚至可以不区分大小写,为啥,就好比之前设置类型别名一样,只不过这些是系统默认的类型别名,而类型别名不区分大小写
除此之外还有这些
查询操作的当输出多组数据的时候
一个数据存放在map里面,当存在多个数据的时候,假如我们要全部取出来,那么只有两种方法
1.使用@MapKey("¥")注解这个方法把¥作为map集合的键,这个时候就把数据的¥作为键,把里面的数据作为值
【但是假如咱们想把数据库里面的数据全部输出的话,¥最好是唯一的】
2.加一个List<Map<String,Object>>这样的话也可以实现多数据的输出
关于模糊查询
实现方法
1.和创建一个mapper接口
2.创建对应的xml
名字好像要相同
3.对其对应的xml进行一个namespace的配置
里面填的是相对地址
4.开始写sql语句
5.开始写测试类【看情况需要】
6.配置基本环境
7.开始写测试方法
如果你像我这么写的话,那么肯定也会报错
错误的原因就是需要咱们将#改成$
然后再次运行,成功
也可以使用concat方法来进行一个字符串的拼接
同样可以执行,其实就是利用#{}会自动给数据添加‘’这一个性质来实现的
第三种:也是最常用的
就是图片上面那个没被注释
但是在我运行的时候出现了报错
经查阅发现是因为前面注释的那几条语句的原因
删了之后再执行一切正常
但是明明我的数据里面还有a的有,为啥就是找不到嘞
看了一下控制台显示的sql语句,大概率是sql语句的问题
改了一下,成功查询
where id in ${¥}这个就是寻找多个数值
在删除的时候咱们只可以用${}来实现
动态查询表名也要用${}
mybatis可以自动获取自增的主键
不晓得有啥用就没咋搞,如果后期不会可以找到P37里面去看看
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 微软正式发布.NET 10 Preview 1:开启下一代开发框架新篇章
· 没有源码,如何修改代码逻辑?
· DeepSeek R1 简明指南:架构、训练、本地部署及硬件要求
· NetPad:一个.NET开源、跨平台的C#编辑器
· 面试官:你是如何进行SQL调优的?