MyBatis学习(一)——SQL语句中符号的转义(SQL不兼容问题)

昨天等大朋友下班,然后去他工位上找他发现他和同事在看代码,我说下班了,然后他说还有一点问题(他们使用的是mybatis框架),让我看看遇没遇到过,经过大朋友的几番演示,我隐隐约约的好像知道是什么问题,百度查了一下证实自己的猜测,果然是转义字符的问题,原来数据库所使用的引号和mybatis不一样!问题解决之后愉快的下班。今天做一下小总结,方便以后自己看一下。

我们在使用Mybatis的时候,大致由三部分组成。

model、mapper接口、mapper.xml

  • model就是我们经常使用的实体类,可以在mapper.xml中直接使用(当做参数或者结果返回)
  • mapper接口就是对服务层提供的接口,是整个数据库操作的封装。
  • mapper.xml是我们来写sql语句的地方,每一个sql语句都有一个唯一标识的id,而这个id要与mapper接口的方法名一致(接口通过方法名去找相应的sql语句执行的

其中在mapper.xml中会使用到,>=,‘’,“ ”等符号,但是很容易引起xml格式的错误,这样会导致后台将xml字符串转换为xml文档时报错,从而导致程序错误。其实很简单,我们只需作如下替换即可避免上述的错误:

原符号 < <= > >= ' ' " "
替换符号 < <= > >= ' "

 

你可能感兴趣的:(MyBatis)