1. 程式人生 > >Springboot整合Mybatis的CallSettersOnNulls配置問題

Springboot整合Mybatis的CallSettersOnNulls配置問題

開始接觸Springboot,作為強迫症重度患者,由於配置都是採用java config方式、而且我的mybatis的result全是Map,現在問題就出現了。。當欄位為null時,則在map中不存在該key。。

這時,強迫症氾濫啊。。打算看著xml改成java config,然後發現了

sqlSessionFactoryBean.setConfigurationProperties
這麼個方法。。看著好像是。試之,果然不是!
然後翻開原始碼,,發現這些東西。。
XMLConfigBuilder xmlConfigBuilder = null;
Configuration configuration;
if
(this.configLocation != null) { xmlConfigBuilder = new XMLConfigBuilder(this.configLocation.getInputStream(), (String)null, this.configurationProperties); configuration = xmlConfigBuilder.getConfiguration(); } else { if(logger.isDebugEnabled()) { logger.debug("Property 'configLocation' not specified, using default MyBatis Configuration"
); } configuration = new Configuration(); configuration.setVariables(this.configurationProperties); }

debug斷點一下,看看configuration裡面是什麼鬼
坑爹啊。。然後發現他這個configration的設定只能通過xml啊。。
至少,這也是一個解釋,只要有解釋,我的強迫症還是能治好的。。。
如果你也看到這個文章了,估計你也跟我一樣,是個強迫症患者了。。只能幫助治療到這裡了。。
//---------------------------------以上文字於10點32分編輯-----------------------------------------------------
後來我想了想,心裡還是不爽,官方文件走起
之前寫的那些配置直接百度的然後仿照著寫的
pom還是引入的org.mybatis 和 mybatis-spring

然後我居然在官網上看到mybatis-spring-boot-starter了

果斷換之!

config走起,果然。SqlSessionFactoryBean有了setConfiguration()方法

問題解決!

事實又一次證明了:不看官方文件,只是盲目的百度搜索,是走彎路的最好途徑