请问在mybatis里choose里可以写多个when吗?

mybatis里choose里可以写多个when吗?


繁华开满天机
浏览 4692回答 3
3回答

小唯快跑啊

1、有时我们不想应用所有的条件,相反我们想选择很多情况下的一种。和Java中的switch语句相似,MyBatis提供choose元素。 要想同时两个都选择应该选用if元素。2、你的Paramter是map, 而你的配置文件中判断都检查的checkType,Map中只能存一个checkType,即使是if也只能执行一次。

慕容3067478

在项目中xml文件经常会遇到在判断等于某个值时加什么条件不等于某个值的时候加什么条件,比如下面这个例子:<if test=" name != null">AND T.NAME = #{NAME,jdbcType=VARCHAR}</if><if test=" name = null">ORDER BY NAME,ID</if>上面这个例子是一个错误的写法不可以这样用。正确的需要引入<choose>标签<choose><when test=" name != null">AND T.NAME = #{NAME,jdbcType=VARCHAR}</when><otherwise>ORDER BY T.PRODUCT_TYPE_CODE, T.SORT DESC, T.CREATE_TIME</otherwise></choose>
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java
Python