在MyBatis中处理数据库的NULL值有多种方法,可以通过if、choose、when等标签来处理。
使用if标签处理NULL值:<select id="getUserById" parameterType="int" resultType="User"> SELECT * FROM user WHERE id = #{id} <if test="name != null"> AND name = #{name} </if></select>使用choose、when标签处理NULL值:<select id="getUserById" parameterType="int" resultType="User"> SELECT * FROM user WHERE id = #{id} <choose> <when test="name != null"> AND name = #{name} </when> <otherwise> AND name IS NULL </otherwise> </choose></select>使用${}占位符处理NULL值:<select id="getUserByName" parameterType="String" resultType="User"> SELECT * FROM user WHERE name = '${name}'</select>需要注意的是,对于使用${}占位符的方式,需要注意SQL注入问题,建议使用#{name}来处理参数。




