Mybatis映射文件中#取值時指定參數相關規則

Mybatis映射文件中#取值時指定參數相關規則

在#{}中,除了須要的數值外,還能夠規定參數的一些其餘規則。java

例如:javaType,jdbcType,mode(存儲過程),numericScale,resultMap,typeHandler,jdbcTypeName,expression;mysql

其中比較經常使用的爲jdbcType。web


jdbcType

​ jdbcType一般在某種特定的條件下被設置:即在咱們傳入數據爲null的時候,有些數據庫可能不能識別mybatis對null的默認處理。好比Oracle(報錯 :JdbcType OTHER:無效的類型;)。咱們須要在傳值後面加上jdbcType = 類型,來確保數據庫的正確識別。sql

​ 由於mybatis對全部的null都映射的是原生Jdbc的OTHER類型,Oracle不能正確處理,mysql能夠正常處理。即產生的主要緣由是全局配置中,jdbcTypeForNull的默認值爲OTHER,oracle不予支持。數據庫

​ 因此,除了在#{}裏面添加JdbcType的規則,還能夠在mybatis全局配置裏面添加全局配置:express

<setting name="jdbcTypeForNull" value="NULL|VARCHAR|OTHER">mybatis

相關文章
相關標籤/搜索