`

java mybatis

 
阅读更多
  1. <!-- retrieve report statistics by company type -->  
  2.     <select id="retrieveReportByCompanyType" parameterType="java.lang.String" resultMap="ReportViewModel">  
  3.         select   
  4.             <include refid="report_column_list"/>  
  5.         from audit_company_view   
  6.         <where>  
  7.             <if test="year != null and year != ''">  
  8.                 au_year = #{year,jdbcType=CHAR}   
  9.             </if>  
  10.         </where>  
  11.         group by t_id  
  12.     </select>  

一般这个错是指参数parameterType类型的字段 没有get, set方法, 我只是传个String类型的参数, so 刚遇到这个问题的时候, 有点摸不着头脑, 怎么会报这个错呢? 原来问题出现在配置文件中:

  1. <if test="year != null and year != ''">  

mybatis自动将if判断中的字段默认为传进来的parameterType类型的字段了... so....只要将这个if判断去掉即可.

  1. <!-- retrieve report statistics by company type -->  
  2. <select id="retrieveReportByCompanyType" parameterType="java.lang.String" resultMap="ReportViewModel">  
  3.     select   
  4.         <include refid="report_column_list"/>  
  5.     from audit_company_view   
  6.     <where>  
  7.             au_year = #{year,jdbcType=CHAR}   
  8.     </where>  
  9.     group by t_id  
  10. </select>  
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics