Mybatis中常见异常原因分析

Mybatis中常见异常原因分析

1、mybatis使用 dao.xml中的sql语句报错Tag name expected

原因分析:在mybatis中出现Tag name expected错误时(一般编译是就会报错),主要的原因是xml文件中编写SQL语句大于、小于等需要转义处理

//	<		用	&lt;代替
//	>		用	&gt;代替
//	&		用	&amp;代替
//	'		用	&apos;代替
//	“		用	&quot;代替
第一种写法(1):
原符号       <        <=      >       >=       &        '        "
替换符号    &lt;    &lt;=   &gt;    &gt;=   &amp;   &apos;  &quot;
例如:sql如下:
create_date_time &gt;= #{startTime} and  create_date_time &lt;= #{endTime}

第二种写法(2):
大于等于
<![CDATA[ >= ]]>
小于等于
<![CDATA[ <= ]]>
例如:sql如下:
create_date_time <![CDATA[ >= ]]> #{startTime} and  create_date_time <![CDATA[ <= ]]> #{endTime}
2、mybatis中的一对多查询时,如果两张表的id名称都相同,最好给第二张表取一下别名,防止查出的数据出问题(即查出的数据错误的)
3、mybatis中使用if标签注意事项,当object对象为空时会报异常,最好这样判断test=‘object !=null and object.name!=null’
<if test='object.name!=null'>name=#{object.name}</if>(当object为null时会报空指针)
<if test='object !=null and object.name!=null'>name=#{object.name}</if>(正确写法)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值