1.#{}和${}的区别是什么?
2.Xml映射文件中,除了常见的select|insert|updae|delete标签之外,还有哪些标签?
3.通常一个Xml映射文件,都会写一个Mapper接口与之对应,请问,这个Mapper接口的工作原理是什么?Mapper接口里的方法,参数不同时,方法能重载吗?
Mapper接口,接口的全限名,就是映射文件中的namespace的值,接口的方法名,就是映射文件中MappedStatement的id值,接口方法内的参数,就是传递给sql的参数。
Mapper接口是没有实现类的,当调用接口方法时,接口全限名+方法名拼接字符串作为key值,可唯一定位一个MappedStatement com.mybatis3.mappers.StudentDao.findStudentById,可以唯一找到namespace为com.mybatis3.mappers.StudentMapper下面id = findStudentById的MappedStatement。
在Mybatis中,每一个、、、标签