国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 學(xué)院 > 開發(fā)設(shè)計(jì) > 正文

mybatis 異常:org.apache.ibatis.binding.BindingException

2019-11-08 02:30:35
字體:
供稿:網(wǎng)友

異常

org.mybatis.sPRing.MyBatisSystemException: nested exception is org.apache.ibatis.binding.BindingException: Parameter 'seckillId' not found. Available parameters are [1, 0, param1, param2]

分析

異常的大概意思就是,mapper方法的參數(shù)綁定異常,然后看看我的mapper.xml和mapper.java文件:

SuccessKilled queryByIdWithSeckill(long seckillId, long userPhone); <insert id="insertSuccessKilled"> INSERT ignore INTO success_killed(seckill_id,user_phone,state) VALUES (#{seckillId},#{userPhone},0) </insert>

這個(gè)異常的產(chǎn)生原因是因?yàn)椋?dāng)mapper接口方法有多個(gè)參數(shù)時(shí),java不會(huì)保存行參的記錄,java在運(yùn)行的時(shí)候會(huì)把方法中的參數(shù)(long seckillId, long userPhone)變成這樣:(int arg0,int arg1),這樣我們就沒有辦法去傳遞多個(gè)參數(shù)(注意,在多個(gè)參數(shù)時(shí)才會(huì)發(fā)生)

解決

需要在mapper接口中指定參數(shù)名稱:

SuccessKilled queryByIdWithSeckill(@Param("seckillId")long seckillId, @Param("userPhone") long userPhone);

這樣才能使我們的MyBatis識(shí)別offset和limit兩個(gè)參數(shù),將Dao層方法中的這兩個(gè)參數(shù)與xml映射文件中sql語(yǔ)句的傳入?yún)?shù)完成映射


發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 突泉县| 锦屏县| 壤塘县| 湄潭县| 堆龙德庆县| 安陆市| 西充县| 凤山县| 呼玛县| 舒兰市| 华容县| 柞水县| 威宁| 台东县| 密云县| 沈阳市| 衡阳市| 岳阳县| 石柱| 德保县| 阳西县| 商城县| 樟树市| 阿巴嘎旗| 墨江| 晋州市| 凤台县| 九龙坡区| 久治县| 六安市| 张家界市| 出国| 河东区| 富宁县| 汉中市| 阳朔县| 姜堰市| 陇南市| 胶州市| 鄯善县| 朝阳区|