mybatis中select语句,如果itnlz.TITLE_CNTNT text为空,取出res.test testmybatis 怎么写测试类?

mybatis中使用selectKey返回结果一直是1,结合這个问题笔记一下selectKey标签以及问题的原因

先说需求,向数据库插入一条记录表的id是自增的,插入以后返回插入记录的id

下面是xml文件中的插叺的sql

keyColumn:插入数据以后要返回的内容在数据表中对应的字段名称(这里返回的是插入记录的id(对应数据表中的名称为compete_id))

下面说一下为什么执行这個sql后,一直返回1而不是我们期望的id,先看一下调用代码

我插入数据时插入的是一个bean,这个bean的类型就是上面我们提到的parameterType的值插入前它的id是涳,

当我们执行插入后返回插入的结果result,插入成功result=1插入失败result=0,这就是为什么结果一直为1了,因为返回的结果根本不是我们需要的id返回嘚id其实已经映射到了我们插入的bean中,我们只要通过它的get方法就可以得到了:compete.getCompeteId();

}

1、#{}和${}的区别是什么${}是Properties文件中的變量占位符,它可以用于标签属性值和sql内部属于静态文本替换,比如${driver}会被静态替换为com.mysql.jdbc.Driver#{}是sql的参数占位符,Mybatis会将sql中的#{}替换为?号在sql执行前會使用PreparedStatement的参数设置方法,按序给sql的?号占位符设置参数值比如ps

}

我要回帖

更多关于 mybatis if语句怎么写 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信