天天看點

MyBatis:Choose 動态查詢

動态查詢:choose 标簽(相當于java中的if)

choose有兩個标簽:when and otherwise

when:     标簽表示當 when 中的條件滿足的時候就輸出其中的内容

otherwise: 标簽當所有的條件都不滿足的時候就輸出其中的内容

例如:

擷取到bean層的ID            設定包名            設定傳回值得資料類型
<select id="findUserInfoByOneParam" parameterType="Map" resultMap="UserInfoResult">
	//查詢語句
	select * from userinfo 
	//設定動态查詢
	<choose>
		如果這個字段不為空,則department=#{department}
		<when test="department!=null">  
			where department=#{department}
		</when>
		如果這個字段不為空,則position=#{position}
		<when test="position!=null"> 
			where position=#{position}
		</when>
		//如果以上條件都不滿足則執行此語句
		<otherwise>
			where gender=#{gender}
		</otherwise>
	</choose>
</select> 
           

繼續閱讀