1. Mapper动态代理规范
- 接口名称需要与映射配置文件名称相同
- 映射配置文件中 namespace 必须是接口的全名。
- 接口中的方法名和映射配置文件中的标签的 id 一致。
- 接口中的返回值类型和映射配置文件中的 resultType 的指定的类型一致
2. Mapper动态代理模式下的多参数处理
- 顺序传参法:参数需要使用arg0,arg1...或者param1,param2...表示参数的顺序。
- @Param注解传参法:在SQL语句中通过注解中所定义的参数名称完成参数位置的指定。
- POJO传参法:绑定参数时使用POJO的属性名作为参数名即可。
- Map传参法:使用Map的key作为参数名即可
3. 获取自增主键值
| <insert id="insertUsersGetKey" useGeneratedKeys="true" keyProperty="userid"> |
| insert into users values(default , |
| </insert> |
| |
| <settings> |
| <setting name="useGeneratedKeys" value="true"/> |
| </settings> |
| |
| <insert id="insertUsersGetKey" keyProperty="userid"> |
| insert into users values(default , |
| </insert> |
3. 获取非自增主键值
| <insert id="insertUsersGetKey2"> |
| <selectKey order="AFTER" keyProperty="userid" resultType="int"> |
| SELECT LAST_INSERT_ID() |
| </selectKey> |
| insert into users values(default, |
| </insert> |
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?