熟悉mybatis的都知道,mybatis的动态标签where加载时机是当条件有值的时候,如mybatis的官方文档的介绍一样,mybatis的where相当于以下trim(mybatis官方文档内容)

 

 但是最近写代码的时候遇到了问题,分明使用了动态的where标签,但是and或者or就是去不掉,比如:

后台sql语句打印出来的and就是去不掉,头疼了好一会,才知道原来是因为注释导致的,mybatis中的条件前加注释的话,解析会认为条件前有值,故而不会去掉and,把注释去掉之后就可以解决 

但是如果你就想加注释想知道条件是做什么用的,也可以,但是不能用java中的注释,会被解析的,可以使用前端注释或者说xml文件的注释格式【<!--注释内容-->】即可

如:

 

 

 

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐