ibatis动态生成列时的列名无效-阿里云开发者社区

开发者社区> 技术小阿哥> 正文

ibatis动态生成列时的列名无效

简介:
+关注继续查看
iBatis会自动缓存每条查询语句的列名映射,所有如果你动态生成列名的话就有可能造成查询列名无效的问题
同一条SQL语句先被queryforpage()调用,SQL语句被拦截套上了分页语法。此时rn列名被缓存。之后你又使用queryforlist()方法执行查询。此时SQL语句不被拦截拼分页语法,此时便报出rn列名无效。解决办法是在SQL语句上加一个属性(remapResults)配置让每次执行都重新映射列名。注:仅在可能被queryforpage()和queryforlist()都调用的SQL语句上加此属性。(以牺牲性能为代价,损耗很小很小)。如下所示:
<selectid="sql_Sel_Mp_Design"parameterClass="map"resultClass="dto"remapResults="true">

</select>




本文转自 winters1224 51CTO博客,原文链接:http://blog.51cto.com/winters1224/797836,如需转载请自行联系原作者

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
SIGIR-2018-EASR workshop keynote,阿士比亚:阿里巴巴智能内容生成实践
研讨会由罗格斯大学计算机系张永锋老师、加州大学圣克鲁兹分校计算机系张奕老师、清华大学计算机系张敏老师共同主办,张永锋老师现场主持。
1483 0
MyEclipse 从数据库反向生成Hibernate实体类
         第一个大步骤 window-->open Perspective-->MyEclipse Java Persistence 进行了上面的 操作后会出现一个视图DB Brower:MyEclipse Derby,点击右键新建一个在出现的面板中,driver templat...
800 0
利用新浪微博接口生成漂亮的微博卡片
新浪微博开放平台(http://open.weibo.com/)提供了大量的接口API,如粉丝,微博,评论,用户读取等26个接口,共分为微博相关API,公共服务API,地理信息API等三大板块API。开发者只需注册开放平台App Key,即可利用开放平台提供的API测试工具测试各个不同的接口。
1370 0
SSM框架——使用 MyBatis Generator 生成代码,包括:Model、Dao、Mapping
基于 SSM 框架开发,Mybatis 属于半自动 ORM,如果每个数据表相关的 Model、Dao、Mapping 都要自己动手去写,是不是很麻烦呢?工作量最大的就是书写Mapping的映射文件,而且手动书写很容易出错。
1128 0
Spring Boot项目利用MyBatis Generator进行数据层代码自动生成
概 述 MyBatis Generator (简称 MBG) 是一个用于 MyBatis和 iBATIS的代码生成器。它可以为 MyBatis的所有版本以及 2.2.0之后的 iBATIS版本自动生成 ORM层代码,典型地包括我们日常需要手写的 POJO、mapper xml 以及 mapper 接口等。
1799 0
使用Mybatis generator帮助Mybatis生成配置和映射
使用Mybatis generator帮助Mybatis生成配置和映射 下载安装Mybatis Generator后,在Eclipse中,File>>New>>Other...,输入MyBatis,出现如下选项,说明安装成功。
1397 0
9455
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
文娱运维技术
立即下载
《SaaS模式云原生数据仓库应用场景实践》
立即下载
《看见新力量:二》电子书
立即下载