一、mybatis转义问题

mybatis中SQL在 mapper.xml 中书写时,如果有  < 、>、<=、>=  时会出错,应该使用转义的写法。

  • 写法一  转义
< <= > >= & ' "
&lt; &lt;= &gt; &gt;= &amp; &apos; &quot;

 

例如:

age &gt;= #{age}
  • 写法二

<![CDATA[  sql语句  ]]>

例如:

age <![CDATA[ >= ]]> #{age}

二、Mybatis中&和#的区别

  •   1 #是将传入的值当做字符串的形式,

  eg: select id,name,age from student where name=#{name}   -- name='cy'

  •   2 $是将传入的数据直接显示生成sql语句,

  eg: select id,name,age from student where name=${name}    -- name=cy

  •   3 使用#可以很大程度上防止sql注入。(语句的拼接)
  •   4 但是如果使用在order by 中就需要使用 $.
  •   5 在大多数情况下还是经常使用#,但在不同情况下必须使用$.

三、注意点

  1. mybatis中实体字段如果是Integer类型的话,在xml中判断会认为是'';

mybatis 相关的更多相关文章

  1. 使用Mybatis Generator自动生成Mybatis相关代码

    本文将简要介绍怎样利用Mybatis Generator自动生成Mybatis的相关代码: 一.构建一个环境: 1. 首先创建一个表: CREATE TABLE pet (name VARCHAR(2 ...

  2. MyBatis相关配置

    在MyBatis中,不免会有一些配置要设置,我们先来看一下MyBatis配置XML文件的层次结构,这些层次是不能够颠倒顺序的,下面是层次结构: <?xml version = "1.0 ...

  3. Mybatis相关SQL操作总结

    1.resultMap和resultType等参数以及结果集 <select id="getApplicationByRoleCode" resultType="p ...

  4. MyBatis相关资源

    MyBatis很多项目中有用到,但会用并不表示你真正理解它,更不代表你能很清楚的教会别人.如果想在会用它的基础上更深入的通过学习它而提升自己技术能力,可利用下面资源. 1.官网文档,基本概念讲的很清楚 ...

  5. Mybatis相关设置

    MyBatis的设置 学习笔记: Mybatis上设置信息可以配置,也可不进型配置,在对Mybatis的setting配置后,会影响到它的运行时行为.以下是相关设置信息的关键字,及所包含的意义: ag ...

  6. Mybatis相关知识点(二)

    Mybatis解决jdbc编程的问题 1. 数据库连接创建.释放频繁造成系统资源浪费从而影响系统性能,如果使用数据库连接池可解决此问题. 解决:在SqlMapConfig.xml中配置数据连接池,使用 ...

  7. mybatis 相关总结

    1. Mybatis的<where><foreach><set>等标签详解:http://blog.csdn.net/zenson_g/article/detail ...

  8. mybatis相关知识

    @param解释为映射mapper.xml中的传参 mybatis中批量新增时用foreach循环,注意其中的collection属性,有list,数组 注意foreach中sql函数的写法,orac ...

  9. 【持续更新】MyBatis相关

    MyBatis开发结构 #与$的区别

随机推荐

  1. python常用函数和方法 - 备忘

    语法语句篇 除法运算(精确运算和截断运算) 在python2中,除法运算通常是截断除法.什么是截断除法: >>> 3/4 0 # 自动忽略小数项 要是想 得到正确结果 怎么办呢? m ...

  2. chrome如何添加扩展程序及登录

    https://jingyan.baidu.com/album/7e440953191a2b2fc0e2ef0c.html?picindex=3

  3. 使用Jexus服务器运行Asp.Net Core2.0程序

    前段时间写了篇关于.net core跨平台部署的文章.https://my.oschina.net/lichaoqiang/blog/1861977 主要讲述了,利用Nginx+CentOS+Supe ...

  4. MongoDB调优-查询优化-MongoDB Profiler

    MongoDB查询优化-MongoDB Profiler MongoDB Profiler 概述 官方文档:https://docs.mongodb.com/manual/tutorial/manag ...

  5. 分布式系统CAP理论以及注册中心选择

    CAP定理:指的是在一个分布式系统中,Consistency(一致性). Availability(可用性).Partition tolerance(分区容错性),三者不可同时获得. 一致性(C-数据 ...

  6. 反调试手法之CreateProcess反调试

    反调试手法之CreateProcess反调试 在学习Win32 创建进程的时候.我们发现了有一个进程信息结构体. STARTUPINFO. 这个结构体可以实现反调试. 具体CreateProcess可 ...

  7. HttpClient Timeout waiting for connection from pool 问题解决方案

    错误:org.apache.http.conn.ConnectionPoolTimeoutException: Timeout waiting for connection from pool 前言 ...

  8. linux nohup

    nohup RAILS_ENV=production bundle exec XXXX & nohup RAILS_ENV=production bundle exec XXXX >/d ...

  9. 使用Asp.Net Core MVC 开发项目实践[第五篇:缓存的使用]

    项目中我们常常会碰到一些数据,需要高频率用到但是又不会频繁变动的这类,我们就可以使用缓存把这些数据缓存起来(比如说本项目的导航数据,帖子频道数据). 我们项目中常用到有Asp.Net Core 本身提 ...

  10. PHP与MySQL的关系?

    1).mysqli和PDO 属于MySQL的拓展包extension 2)my.ini开启拓展命令 extension=php_mysqli.dll extension=php_pdo_mysql.d ...