【Mybatis】報錯:Malformed OGNL expression: name!= null and name != ' 'html
英文感嘆號和等號之間不能有空格;java
org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.binding.BindingException: Parameter 'productCode' not found. Available parameters are [prdRuleStageEntity, param1]
int updatePrdRuleStageEntity(Param("prdRuleStageEntity") PrdRuleStageEntity prdRuleStageEntity);
緣由是mapper不該該有帶 參數的註解。在xml中已經指定了parameter,就不要寫@paramspring
org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: ### Error updating database. Cause: java.lang.IllegalArgumentException: invalid comparison: java.util.Date and java.lang.String ### Cause: java.lang.IllegalArgumentException: invalid comparison: java.util.Date and java.lang.String
原來這是mybatis 3.3.0中對於時間參數進行比較時的一個bug. 若是拿傳入的時間類型參數與空字符串''進行對比判斷則會引起異常. express
<if test="createTime != null and createTime !='' " > date(create_time) = date(#{createTime,jdbcType=TIMESTAMP}) </if> 改成 <if test="createTime != null"> date(create_time) = date(#{createTime,jdbcType=TIMESTAMP}) </if>
mybatis異常invalid comparison: java.util.Date and java.lang.String apache
一來是檢查model中拼寫是否錯誤,二來是檢查映射的map是否正確mybatis
解決org.apache.ibatis.binding.BindingException: Invalid bound statement (not found)問題app