1. 程式人生 > >mybaits的There is no getter for property named 'id' in 'class java.lang.Integer異常

mybaits的There is no getter for property named 'id' in 'class java.lang.Integer異常

使用mybatis傳入引數,如果引數型別是String ,InInteger,等這些時。如果用他的標籤判斷該引數是否為空,通常會爆There is no getter for property named ‘id’ in ‘class java.lang.Integer異常。
解決辦法1:
在介面中該方法的引數前加上@Param(“引數名”)註解。
例如:

StarBeauticianRecord selectByPrimaryKey(@Param(value="id")Integer id);

解決辦法2:
在 xml檔案中應該使用_parameter來代替引數名。
例如:

<select id="selectByPrimaryKey" resultMap="BaseResultMap" parameterType="java.lang.Integer" >
    select 
    <include refid="Base_Column_List" />
    from starBeauticianRecord
    where 1=1
      <if test="_parameter!= null" >
       and  id = #{
_parameter}
 </if>
  </select
>