删除信息报500错误

来源:4-4 实现单条信息删除

且涉烟尘

2016-11-24 15:42

看控制台打印信息,没有parameter值。

log信息显示:

### Error updating database.  Cause: java.lang.IllegalArgumentException: Mapped Statements collection does not contain value for Message.deleteOne

### Cause: java.lang.IllegalArgumentException: Mapped Statements collection does not contain value for Message.deleteOne

Message.xml 配置信息:

<delete id="deleteOne" parameterType="int">
   DELETE FROM message
   WHERE id = #{_parameter}
</delete>

MessageDao中可以正常获取id值:

sqlSession.delete("Message.deleteOne", id);
sqlSession.commit();
点击删除跳转页面也是正确的:

http://localhost:8080/deleteone.action?id=8

查询的都没有问题,就是删除的时候会报500错误,批量删除也一样。不明白为什么那个parameter值获取不到


写回答 关注

2回答

  • 慕侠9672810
    2017-03-21 18:33:23

    你怎么解决的

    kalick

    sqlSession.delete("Message.deleteOne", id); 这句改为 sqlSession.delete("com.imooc.dao.IMessage.deleteOne", id); 就好了

    2017-06-25 00:08:50

    共 1 条回复 >

  • 且涉烟尘
    2016-11-24 16:18:42

    问题已解决,我采用了接口式编程,要点:

    1. 必须保证manpper.xml文件的id值要跟你的接口中的方法名一致,

    2. 要将manpper.xml中的所有数据库操作统一都在接口中定义方法才行。

    kalick

    你好,按照你说的写好了,为什么还是出问题呢

    2017-06-24 23:03:40

    共 1 条回复 >

通过自动回复机器人学Mybatis---基础版

微信公众号自动回复功能学习Mybatis,基础教程加案例实战方式学习

107412 学习 · 786 问题

查看课程

相似问题