zoukankan      html  css  js  c++  java
  • Optional int parameter 'pId' is present but cannot be translated into a null value due to being declared as a primitive type.

    接口测试的时候遇到了一个问题,导致测试阻断了好久,在此记录,谨防忘记。

    具体报错如下:
    Optional int parameter 'pId' is present but cannot be translated into a null value due to being declared as a primitive type. Consider declaring it as object wrapper for the corresponding primitive type.

    接口报错.png

    接口测试代码如下:

    图片.png

    出问题的就是这个pId,
    百度了下这个问题的原因,归根结底就是参数类型错误了:

    可选的参数 pId不存在,但无法被转换为NULL,是因为你把它给定义为 基本类型。建议将其修改为 包装类型。

    就是说,你定义了参数:String pId,但没有值,那按理来说按照null来处理,结果倒霉的事情来了:pId= null; 是不允许的,因为基础类型不能赋值为null。
    所以建议把参数定义修改为Inteter pId.


    那为啥用Integer可以,用int不行呢,原因如下:

    Integer 允许为null值,int默认0,数据库里面如果有个字段没有值可能默认值为null,所以用Integer。

    在hashmap中只能用Integer而不能用int

    int是基本数据类型,定义一个整型数据。Integer是一个类,在hashmap中代表一个对象,所以用object表示。

          </div>
    

    原文地址:https://www.jianshu.com/p/1153070468e1

  • 相关阅读:
    HDU 2896 病毒侵袭 (AC自动机)
    HDU 2222 Keywords Search (AC自动机)
    HDU 2457 DNA repair (AC自动机+DP)
    CoFun 1612 单词分组(容斥)
    邓_mysql_面试
    Html5+js测试题(开发版)
    Html5+js测试题【完整版】
    HTML面试
    支付宝+微信=合成二维码
    邓_laravel框架——news
  • 原文地址:https://www.cnblogs.com/jpfss/p/11447128.html
Copyright © 2011-2022 走看看