博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
mybatis知识点
阅读量:6708 次
发布时间:2019-06-25

本文共 1086 字,大约阅读时间需要 3 分钟。

  hot3.png

1、

分段查询的基础之上(懒加载)加上两个配置在全局配置文件中config.xml:

2、方法二:使用association定义关联的单个对象

方法三:使用association进行分步查询

1、先按照t_id查询学生信息

2、根据查询学生信息中的t_sid值去学校表查出学校的信息
3、学校信息设置到学生中;

3、

  • Mybatis返回值

MyBatis中在查询进行select映射的时候,返回类型可以用resultType,也可以用resultMap,resultType是直接表示返回类型的,而resultMap则是对外部ResultMap的引用,但是resultType跟resultMap不能同时存在。

 

在MyBatis进行查询映射时,其实查询出来的每一个属性都是放在一个对应的Map里面的,其中键是属性名,值则是其对应的值。

①当提供的返回类型属性是resultType时,MyBatis会将Map里面的键值对取出赋给resultType所指定的对象对应的属性。其实MyBatis的每一个查询映射的返回类型都是ResultMap,只是当提供的返回类型属性resultType的时候,MyBatis自动的给对应的值赋给resultType所指定对象的属性。

②当提供的返回类型是resultMap时,因为Map不能很好表示领域模型,就需要自己再进一步的把它转化为对应的对象,这常常在复杂查询中很有作用(association,Collection)

4、多个参数

任意多个参数,都会被MyBatis重新包装成一个Map传入。Map的key是param1,param2,或者0,1,值就是参数的值。

<!-- 带有多个参数,参数名 #{param1},#{param2},或者#{0},#{1},不能使用参数名-->

5、命名参数

为参数使用@Param起一个名字,MyBatis就会将这些参数封装进map中,key就是我们自己指定的名字

<!-- 带有多个参数,使用@Param注解,参数名直接使用定义名, #{name},#{pass}或,#{param1},#{param2},不能用#{0},#{1}-->

转载于:https://my.oschina.net/8824/blog/2253151

你可能感兴趣的文章
WordPress迁移导致图片连接失效
查看>>
使用桌面虚拟化实现“监控云”
查看>>
Linux df -h 与 fdisk -l 命令区别
查看>>
oracle数据库归档日志模式改变
查看>>
我的友情链接
查看>>
网页设计之 JSP_1
查看>>
Linux 学习笔记_13_2_LAMP环境编译(下) --编译过程及分析
查看>>
nagios 监控内存的插件
查看>>
【帧中继】路由器如何模拟帧中继交换机
查看>>
漫谈程序员系列:软件开发的十八般乐趣
查看>>
我的友情链接
查看>>
bootstrap源码里的function加上了+号
查看>>
PYTHON学习0024:函数---局部变量和全局变量----2019-6-19
查看>>
我的友情链接
查看>>
几何画板中直角符号为什么不带阴影
查看>>
详解MathType中如何批量修改公式字体和大小
查看>>
ELEC0021 Programming
查看>>
【模板】单源最短路径spfa
查看>>
【学习——DP】动态规划之我不会QAQ
查看>>
图片压缩处理
查看>>