通常一个Xml映射文件,都会写一个Dao接口与之对应,请问,这个Dao接口的工作原理是什么?Dao接口里的方法,参数不同时,方法能重载吗?
2024-08-30 09:23:18
Dao接口即Mapper接口。接口的全限名,就是映射文件中的namespace的值;接口的方法名,就是映射文件中Mapper的Statement的id值;接口方法内的参数,就是传递给sql的参数。
Mapper接口里的方法,是不能重载的,因为是使用 全限名+方法名 的保存和寻找策略。Mapper接口的工作原理是JDK动态代理,Mybatis运行时会使用JDK动态代理为Mapper接口生成代理对象proxy,代理对象会拦截接口方法,转而执行MapperStatement所代表的sql,然后将sql执行结果返回。
最新文章
- jQuery判断一个字符串中是否包含一个字符串(一)
- RCP:拖拽功能的实现 Drag and Drop
- 素定位器(ElementLocators)
- Js练习题之字符串转驼峰
- 前序/中序--->;后序
- JQuery validate 在IE兼容模式下出现 js错误(成员找不到)的修正:
- UVaLive 6602 Counting Lattice Squares (找规律)
- POJ 2387 Til the Cows Come Home (最短路 dijkstra)
- cocos2d-x 2.0 拖尾效果分析
- 关于T-SQL重编译那点事,内联函数和表值函数在编译生成执行计划的区别
- hdoj 2063 过山车 【双边匹配匈牙利算法】
- Drying poj3104(二分)
- 修改SublimeText3插件Emmet生成HTML中lang属性的默认值
- puppetdb搭建
- redis知识汇总
- 「洛谷5283」「LOJ3048」「十二省联考2019」异或粽子【可持久化01trie+优先队列】
- WPF中datagrid不显示滚动条问题
- C语言中const关键字的用法
- git常用命令及用法小计
- 拖拽功能by javascript 和 react 两种实现方法