mybatis动态列名

<select id="getUser" resultType="java.util.Map" parameterType="java.lang.String" statementType="STATEMENT">select ${columns}from ${tableName}where COMPANY_REMARK = ${company}</select>

要实现动态调用表名和字段名,就不能使用预编译了,需添加statementType="STATEMENT"。

statementType:STATEMENT(非预编译),PREPARED(预编译)或CALLABLE中的任意一个,这就告诉 MyBatis 分别使用Statement,PreparedStatement或者CallableStatement。默认:PREPARED。这里显然不能使用预编译,要改成非预编译。

其次,sql里的变量取值是${xxx},不是#{xxx}。因为${}是将传入的参数直接显示生成sql,如${xxx}传入的参数为字符串数据,需在参数传入前加上引号,如:

String name = "sprite";name = "'" + name + "'";

如果使用的是动态列名,则不需要添加 ' ',直接传入参数即可

  <!--查询月度指标--><select id="findMonthIndicator" resultMap="BaseResultMap"parameterType="com.jn.ssr.superrescuereporting.web.entity.PerformanceIndicatorEntity" statementType="STATEMENT">select  ${param.orderNumber},${param.turnover}from in_performance_indicators<where><if test="param.year != null">and year = #{param.year,jdbcType=INTEGER}</if></where></select>

转载于:https://www.cnblogs.com/huanghuanghui/p/9950876.html

mybatis动态列名相关推荐

  1. 9.mybatis动态SQL标签的用法

    mybatis动态SQL标签的用法 动态 SQL MyBatis 的强大特性之一便是它的动态 SQL.如果你有使用 JDBC 或其他类似框架的经验,你就能体会到根据不同条件拼接 SQL 语句有多么痛苦 ...

  2. Mybatis 动态Sql语句《常用》

    MyBatis 的强大特性之一便是它的动态 SQL.如果你有使用 JDBC 或其他类似框架的经验,你就能体会到根据不同条件拼接 SQL 语句有多么痛苦.拼接的时候要确保不能忘了必要的空格,还要注意省掉 ...

  3. Mybatis动态代理模式实现CRUD

    项目实现的功能 查询所有用户信息 通过Id查询用户信息 添加用户(回显主键) 修改用户信息 删除用户信息 通过用户名字模糊查询 一.引入依赖和工程结构 <?xml version="1 ...

  4. 一文详解Mybatis动态SQL,建议收藏

    一文详解Mybatis动态SQL,建议收藏 1.动态 SQL 2.IF 3.choose.when.otherwise 4.where 5.set 6.trim 7.SQL片段 8.foreach 1 ...

  5. MyBatis Dynamic SQL(一)— 真正的Mybatis动态sql — MyBatis Dynamic SQL

    目录 现状 MyBatis Dynamic SQL 项目地址 官方文档 项目介绍 作者 Mybatis Generator 简介 特性 目标 提示 快速使用 步骤 定义常量Tables和Columns ...

  6. MyBatis动态SQL详解

    一:MyBatis动态 sql 是? 1.动态 SQL 是 MyBatis 的强大特性之一.在 JDBC 或其它类似的框架中,开发人员通常需要手动拼接 SQL 语句.根据不同的条件拼接 SQL 语句是 ...

  7. MyBatis动态SQL语法详解(二)

    文章目录 一.MyBatis查询返回 1.1.MyBatis查询返回对象 1.2.MyBatis查询返回list集合 1.3.MyBatis查询返回Map 1.4.MyBatis查询自定义结果映射规则 ...

  8. MyBatis动态SQL之 set 和 trim标记的使用示例

    2019独角兽企业重金招聘Python工程师标准>>> 和之前的where一样,set和trim也是智能标记 在之前的user.xml中添加 <update id=" ...

  9. MyBatis动态SQL(认真看看, 以后写SQL就爽多了)

    点击上方"方志朋",选择"设为星标" 回复"666"获取新整理的面试文章 来源:cnblogs.com/homejim/p/9909657. ...

  10. 认真看看, 以后写 SQL 就爽多了:MyBatis 动态 SQL:

    点击上方蓝色"程序猿DD",选择"设为星标" 回复"资源"获取独家整理的学习资料! 作者 | 阿进的写字台 来源 | cnblogs.com ...

最新文章

  1. c语言 石头剪刀布的小程序,C语言小程序(七)、石头剪刀布
  2. SAP 差旅报销集成方案的实现
  3. DEVICE_ATTR实例分析
  4. oracle10数据库链接失败,PLSQL Developer连接Oracle 10g或Oracle 11g失败
  5. g4e基础篇#5 创建分支和保存代码
  6. MySQL find_in_set()函数
  7. jq追加元素最前面_DNF:哈林史诗百鬼夜行最理想的首饰搭配,海博伦应选贤者之欲...
  8. 如何从JFrog Artifactory下载资源到本地
  9. 软件测试简历常见问题
  10. CRCNN PCNN
  11. avr单片机流水灯程序c语言,AVR单片机学习(四)C语言的流水灯验证
  12. matlab求解数值积分,应用MATLAB求解数值积分
  13. 颜色的前世今生6·色相环
  14. C盘Administrator中 .m2/repository里面是什么
  15. 第十二章 非编码RNA与复杂疾病
  16. 当你想用Gitee对你的APK文件上传下载时
  17. js-16正则表达式
  18. 这效果炸了,网易云音乐“宇宙尘埃”特效!
  19. MongoDB 可视化工具 Robomongo 使用介绍
  20. exec php 菜鸟教程,sql存储过程菜鸟教程

热门文章

  1. Prototype使用Form操作表单
  2. 【渝粤教育】国家开放大学2019年春季 233学前儿童语言教育 参考试题
  3. 浅谈协方差矩阵 再谈协方差矩阵之主成分分析
  4. GitHub资源学习的网址(未完待续)
  5. linux-ssh免密登录
  6. JavaScript数据结构与算法-列表练习
  7. springmvc02,使用注解
  8. 20175212童皓桢 类定义
  9. isset、is_null、empty的区别
  10. hadoop无法启动DataNode问题