xml特殊符号转义写法 <          < >          > <>   <> &      & &apos;      ' "      " 也可以使用<![CDATA[ ]]>符号进行说明,将此类符号不进行解析 <![CDATA[ 这里写你的sql ]]> mysql like的写法 like concat('%',#{param},'%')  或者 like '%${par…
1 xml文件特殊符号转义 <          < >          > <>   <> &      & &apos;      ' "      " 也可以使用<![CDATA[ ]]>符号进行说明,将此类符号不进行解析 <![CDATA[ 这里写你的sql ]]> 2 模糊查询,like语句 like concat('%',#{param},'%') 3 批量插入 实体类Trai…
一.区别 1.不同点: 以#{}方式传入参数,预编译时,它会将sql中的#{}替换为?,然后编译sql时,会把值两端加上 双引号.有效防止sql注入,保证数据安全. sql注入:通过把SQL命令插入到Web表单提交或输入域名或页面请求的查询字符串,最终达到欺骗服务器执行恶意的SQL命令.       以${}方式传入参数时,字符串替换,不会把值两端加上 双引号. 2.相同点: 拼接sql语句 二.使用 1.${}获取DAO参数数据时,参数必须使用 @param注解 进行修饰或者使用 下标 或者…
< <= > >= & ' " < <= > >= & &apos; "…
Mybatis批量插入需要foreach元素.foreach元素有以下主要属性: (1)item:集合中每一个元素进行迭代时的别名. (2)index:指定一个名字,用于表示在迭代过程中,每次迭代到的位置. (3)collection:根据传入的参数值确定. (4)open:表示该语句以什么开始. (5)separator:表示在每次进行迭代之间以什么符号作为分隔 符. (6)close:表示以什么结束. 首先,错误的xml配置文件如下: <insert id="save" da…
最近在使用MyBatis操作Oracle数据库的时候,进行批量插入数据,思路是封装一个List集合通过Myabtis 的foreach标签进行循环插入,可是搬照Mysql的批量插入会产生 异常 ### Error updating database.  Cause: java.sql.SQLSyntaxErrorException: ORA-00933: SQL 命令未正确结束 错误的写法如下 <insert id="insertExpenseItem" parameterTyp…
mybatis.xml中有if判断条件判断参数不为空时,赋值为0的Integer参数被MyBatis判断为空,因此不执行<if test="param != null and param != ''"></if>的SQL. 所以在做项目时一定要注意,用到MyBatis时,避免用0来做值. 解决方法: <if test="status !=null and (status!='' or status == 0)"> AND t1.`…
<if test="valiStatus==null || valiStatus=='' || valiStatus==4 "> b.work_permit_card_cert is not null and b.work_permit_card_cert!=1 and b.delete_flag =0 </if> <if test="valiStatus==0"> u.user_type = 0 and b.work_permi…
今天在Mapper.xml文件写查询语句报了个奇怪的错误 Caused by: org.apache.ibatis.builder.BuilderException: Error creating document instance.  Cause: org.xml.sax.SAXParseException; lineNumber: 30; columnNumber: 45; 元素内容必须由格式正确的字符数据或标记组成. 元素内容必须由格式正确的字符数据或标记组成 当时我的代码如下 <!-- …