JAVA认证辅导:ibatis动态查询
最近项目需要,做了一个动态查询。把查询结果返回到页面上显示。
要查询的字段和表名都是动态的,是在后台拼出来的。
可是在ibatis中运行的时候总报"列名无效",在sql/plus中运行则正常。
百思不得其解。
后来通过查资料,解决如下
Xml代码
select t.CREATOR,t.CREATE_DT,decode(o.BUSI_OPER_TYPE,'1','新增','2','修改','3','删除') as OPER_TYPE, $colNames$
from $tableName$ t,TAS_OPERATION_LOG o
where $pkIdName$ = #pkIdValue#
and t.log_id = #logId#
其中:remapResults= "true"是必须的,否则会报列名无效的错误。
前台画表格
Js代码
function doSelectAction(Re){
//返回的串
var str = Re.responseText.evalJSON();
var keys = str.keys;
var showNames = str.showNames;
//表头显示名称
var showNamesArray = showNames.split(",");
//sqlMap对应的字段名。
var keysArray = keys.split(",");
//查询结果
var tem = str.logStrlist.evalJSON();
//先清空表格
document.getElementById("newbody").innerText = '';
//画表格头
var row=document.createElement("tr");
for(var j=0;j
编辑推荐:
温馨提示:因考试政策、内容不断变化与调整,长理培训网站提供的以上信息仅供参考,如有异议,请考生以权威部门公布的内容为准! (责任编辑:长理培训)
点击加载更多评论>>