Mybatis中关于返回值的问题
结论:
在Mybatis的xml中,可以使用resultType="…",来指定其返回值的类型,但如果sql语句执行的结果为空,则会返回null。
问题描述:
在写Mybatis中的select语句,因为查找的条件,很有可能会找不到符合条件的信息。我原本以为,找不到信息会返回一个空的JSON。但在之后的使用中出现了报错
<select id="Login_Check" parameterType="com.alibaba.fastjson.JSONObject" resultType="com.alibaba.fastjson.JSONObject">
select * from Login where userName=#{userName} and password=#{password}
</select>
原本使用的代码:
jsonObject = loginService.auth(json); //查询出来的结果,返回给controller层
//出现Bug
if (jsonObject.isEmpty()) { //bug位置
jsonObject.fluentPut("code", "601")
.fluentPut("message", "查询无果")
} else {
....