解决使用mybatis-plus时,生成的SQL大写变小写加下划线问题

在application.xml加上以下配置

mybatis-plus.configuration.map-underscore-to-camel-case=false

补充知识:mybatis中的大小写转义

在使用mybatis 时我们sql是写在xml 映射文件中,如果写的sql中有一些特殊的字符的话,在解析xml文件的时候会被转义,但我们不希望他被转义,所以我们要使用<![CDATA[ ]]>来解决。

<![CDATA[ ]]> 是什么,这是XML语法。

在CDATA内部的所有内容都会被解析器忽略。

如果文本包含了很多的”<”字符 <=和”&”字符,最好把他们都放到CDATA部件中。

但是有个问题那就是 <if test=""> </if> <where> </where> <choose> </choose> <trim> </trim> 等这些标签都不会被解析,所以我们只把有特殊字符的语句放在 <![CDATA[ ]]> 的范围中。

下面就举个大小写字符的例子,上面那些标签把转义符号嵌套在里面即可:

select
<include refid="Base_Column_List"/>
from mmall_order
where status = #{status}
<![CDATA[
and create_time <= #{date}
]]>
order by create_time desc

以上这篇解决使用mybatis-plus时,生成的SQL大写变小写加下划线问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们。

(0)

相关推荐

  • 解决mybatis用Map返回的字段全变大写的问题

    mybatis通常情况都是用javabean作为resultType的对象,但是有时也可以使用Map去接收. <select id="execute" parameterType="String" resultType="java.util.HashMap"> ${value} </select> 如果使用Map,返回来的字段名全是大写,处理方法 Select name as "name" from v

  • MyBatisPlus 自定义sql语句的实现

    一.引言 Good Good Study,Day Day Up MP自带的条件构造器虽然很强大,有时候也避免不了写稍微复杂一点业务的sql,那么那么今天说说MP怎么自定义sql语句吧. 二.配置 自定义的sql当然是写在XML文件中的啦,那么首先来定义xml文件的位置,在yml配置文件如下 mybatis-plus: # 如果是放在src/main/java目录下 classpath:/com/*/*/mapper/*Mapper.xml # 如果是放在resource目录 classpath:

  • MyBatis-Plus代码生成器的使用详解

    1.引入依赖 <!--mybatisplus依赖--> <dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus-boot-starter</artifactId> <version>3.0.5</version> </dependency> <!--代码生成模板--> <dependency>

  • MybatisPlus:使用SQL保留字(关键字)的操作

    MySQL8将over作为了保留字,此时操作这个字段应当加 ``,在MybatispPlus中的做法为使用@TableField注解: 同样的,如果表名是关键字,则使用@TableName注解 @TableName("`over`") public class over extends BaseEntity { } 补充知识:mybatis-plus sql报错 字段与Mysql关键字重名 字段中包含describe字段,通过mybatis-plus插入数据一直报错,经排查,原来是与M

  • 解决使用mybatis-plus时,生成的SQL大写变小写加下划线问题

    在application.xml加上以下配置 mybatis-plus.configuration.map-underscore-to-camel-case=false 补充知识:mybatis中的大小写转义 在使用mybatis 时我们sql是写在xml 映射文件中,如果写的sql中有一些特殊的字符的话,在解析xml文件的时候会被转义,但我们不希望他被转义,所以我们要使用<![CDATA[ ]]>来解决. <![CDATA[ ]]> 是什么,这是XML语法. 在CDATA内部的所

  • mybatis返回类型map时如何将key大写转为小写

    亲测: SELECT DEPTNO as "deptno",DEPTNAME,DEPTGRADE,PARENTDEPT FROM VMGR_DEPT ORDER BY DEPTGRADE,DEPTNO 别人案例: <select id="selectBlogRetHashMap" parameterType="int" resultType="map"> SELECT id AS "id", t

  • Mybatis插入时返回自增主键方式(selectKey和useGeneratedKeys)

    目录 Mybatis插入时返回自增主键 Mybatis批量插入返回自增主键 解决办法 Mybatis插入时返回自增主键 通过selectKey在插入操作前或者操作后获取key值,做为字段插入或返回字段.(此段代码获取的序列值id作为字段值插入到实体类中返回) <insert id="insert"> <selectKey keyProperty="id" resultType="int" order="AFTER&qu

  • idea在用Mybatis时xml文件sql不提示解决办法(提示后背景颜色去除)

    目录 1.mapper.xml文件中的sql语句不提示 1.1 首先,alt+enter,出现如下窗口 1.2 其次是,本身为什么没有提示 2 .背景颜色去除 总结 1.mapper.xml文件中的sql语句不提示 1.1 首先,alt+enter,出现如下窗口 随后的窗口选择 这样在如下窗口中会增加一个update 双击点开后如下,一定注意这个地址是https 这样你就可以在update中有提示了,但是在其他标签中依然没有提示,如法炮制即可 有一个简单的方法,就是在local name中写sq

  • 解决myBatis generator逆向生成没有根据主键的select,update和delete问题

    一.配置逆向generatoe.xml <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE generatorConfiguration PUBLIC "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN" "http://mybatis.org/dtd/mybatis-generator-config_1

  • Mybatis查询时数据丢失的问题及解决

    目录 Mybatis查询时数据丢失 经过排查得出结论 解决办法 Mybatis查询部分字段漏查问题(mysql) Mybatis查询时数据丢失 公司里的实体类和mapper文件均由mybatis逆向工程生成 之前使用myabtis查询时直接使用注解@select(......)时遇到了一个问题. 结果显示数据库查询没有问题,但是有的数据缺没有插入到指定的字段中,如下图中ID成功存储,Z40_ID,Z40_103到Z40_113均失败. 经过排查得出结论 如果数据库命名很规范比如user_name

  • MyBatis查询时属性名和字段名不一致问题的解决方法

    问题 当我们数据库中的字段和实体类中的字段不一致的时候,查询会出问题 数据库字段是 pwd id name pwd 1 张三 123456 2 李四 123456 3 王五 123456 4 赵六 123456 实体类字段是 password public class User { private int id; private String name; private String password; } 查出来结果发现, password 是 null User{id=1, name='张三

  • 关于mybatis使用${}时sql注入的问题

    目录 mybatis使用${}时sql注入的问题 区别 解决方法 mybatis sql注入问题之$与# 在mybatis中使用$符号 在mybatis中使用#符号 mybatis使用${}时sql注入的问题 最近在上线项目的时候,代码审查没有通过,提示有sql注入的风险. ORDER BY ${orderBy} 很简单的一个排序字段,但是因为使用 ${} 占位符的原因,有sql注入的风险,相信大家平时也经常会使用这个占位符,不知道有没有考虑sql注入的问题,下面简单介绍下 #{} 和 ${}

  • mybatis 对于生成的sql语句 自动加上单引号的情况详解

    目录 对于生成的sql语句 自动加上单引号的情况 mySQL中replace的用法 mybatis中IFNULL(P1,P2)函数的用法 mybatis单引号字母逻辑处理的一个坑 原因分析 对于生成的sql语句 自动加上单引号的情况 mybatis是这样的,如果表的字段跟系统字段冲突,写sql语句的时候必须得加上单引号,这样才会区分 mySQL中replace的用法 1.replace into replace into table (id,name) values('1','aa'),('2'

  • Mybatis详解在注解sql时报错的解决方法

    目录 错误: 文件结构 BookMapper.java BookMapperSQL .java Mybatis的配置文件 分析: 错误: 在做Mybatis用注解方式来注入sql的练习时,报了这样子的错误. 遇到错误很正常,然后我又从学了一遍今天刚刚学的内容,温故而知新嘛. 错误问题如下: 文件结构 BookMapper.java public interface BookMapper { @SelectProvider(type = BookMapperSQL.class,method = "

随机推荐