java - Mybatis 参数类型问题,应该是Map,结果报错.
阿神
阿神 2017-04-18 10:51:33
0
5
805

我写了个查询接口,传入的参数是个Map,写SQL的时候,我在parameterType填写java.util.Map,调用居然报错,类型转换错误,String转map失败.我把parameterType改为String就没报错,结果出来了,但是我传入的是2个值啊!!!!!真崩溃~!
代码如下:
接口:

报错的XML:

修改为这样就正常了:

但是我SQL里是多个参数啊,不应该用Map么???求大神解答疑惑

阿神
阿神

闭关修行中......

répondre à tous (5)
Peter_Zhu

你的map 是null 你可以把错误贴出来

    Ty80

    因为你没在 mapper interface 的 method 里指定@Param注解,当此时只有一个参数的时候,会自动拆开。Map 类型会按拆开。复杂数据类型会根据getter拆开。

    你可以参考一下这个:https://my.oschina.net/triday... 。

      巴扎黑

      你在接口里面指定一下Map的key value

        PHPzhong

        可能是接口的Map没有指定类型的问题,建议做一下修改:

        public Module selectByMap(Map map)
          Peter_Zhu

          楼主,我现在遇到跟你一样的问题,按照你的评论回复中的说法,mapper文件里面参数类型改为hashMap,DAO层不用任何注解,sql语句中取值语法跟你一样,但是仍未取到值,求解

            Derniers téléchargements
            Plus>
            effets Web
            Code source du site Web
            Matériel du site Web
            Modèle frontal
            À propos de nous Clause de non-responsabilité Sitemap
            Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!