异常
Invalid bound statement (not found)
结论
Mybatis 特殊字符未转义,导致SQL解析异常。
原因
在csdn上转了一圈,都是讲名字不对什么的,但是我这里根本没有XML文件,我这边是使用注解@Select,(至于为什么使用,为了保持团队风格统一),我也是第一次使用这玩意儿,简单的SQL写起来没啥问题,也少了很多成对的标记。。。扯远了,回到问题。
百度无果后,然后打开vpn 去Google了一波(就应该一开始就使用Google的,大雾),看见下面这篇:
https://stackoverflow.com/questions/56729438/using-select-for-query-data-but-got-invalid-bound-statement-not-found
让我有了新的想法,应该是符号转义导致的,原始sql语句做了简化后,如下
@Select("<script> " +
" select id from table_name WHERE start_time > #{startTime} "
"</script>")
将大于小于(<>)号转义之后(>
)的语句
@Select("<script> " +
" select id from activity_goods_label WHERE status = 0 and goods_id = #{goodsId} and start_time > #{endTime} " +
"</script>")
结束!
附
Mybatis转义字符:https://blog.csdn.net/zhou520yue520/article/details/82586665