Mybatis的mapper文件中#和$的区别 以及 resultType和resultMap的区别
Posted liuqing576598117
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Mybatis的mapper文件中#和$的区别 以及 resultType和resultMap的区别相关的知识,希望对你有一定的参考价值。
一般#{}用于传递查询的参数,一般用于从dao层传递一个string或者其他的参数过来,mybatis对这个参数会进行加引号的操作,将参数转变为一个字符串。
SELECT * FROM employee WHERE name="jack"
而$则不同,我们一般用于ORDER BY的后面。
SELECT * FROM employee ORDER BY salary
MyBatis的每一个查询映射的返回类型都是ResultMap,只是当我们提供的返回类型属性是resultType的时候,MyBatis对自动的给我们把对应的值赋给resultType所指定对象的属性,而当我们提供的返回类型是resultMap的时候,将数据库中列数据复制到对象的相应属性上,可以用于复制查询,两者不能同时用。
以上是关于Mybatis的mapper文件中#和$的区别 以及 resultType和resultMap的区别的主要内容,如果未能解决你的问题,请参考以下文章
关于Mybatis的mapper文件中${}和#{}的区别和注意事项
mybatis中xml格式的mapper文件中接收入参时#和$的区别
SpringBootSpringBoot集成MyBatis中@Mapper/@MapperScan和@Repository的区别
SpringBootSpringBoot集成MyBatis中@Mapper/@MapperScan和@Repository的区别