基于SpringBoot加載Mybatis的TypeAlias問題
SpringBoot加載Mybatis的TypeAlias
springboot打成jar之后再linux上運(yùn)行會報找不到 type alias 對應(yīng)的實(shí)體類的問題,這是springboot掃包的問題。
工程上默認(rèn)使用的是Mybatis的DefaultVFS進(jìn)行掃描,但是在springboot的環(huán)境下,Mybatis的DefaultVFS這個掃包會出現(xiàn)問題,所以只能修改VFS,為了清晰可見
直接貼代碼:
@Bean public SqlSessionFactory sqlSessionFactoryBean() throws Exception { logger.info("load SpringBootVFS"); //DefaultVFS在獲取jar上存在問題,使用springboot只能修改 VFS.addImplClass(SpringBootVFS.class); SqlSessionFactoryBean sqlSessionFactoryBean = new SqlSessionFactoryBean(); sqlSessionFactoryBean.setDataSource(dataSource()); PathMatchingResourcePatternResolver resolver = new PathMatchingResourcePatternResolver(); Resource[] resources1 = resolver.getResources("classpath*:/mybatis/*.xml"); Resource[] resources2 = resolver.getResources("classpath*:/mysql/mapper/*.xml"); Resource[] resources = (Resource[]) ArrayUtils.addAll(resources1,resources2); sqlSessionFactoryBean.setMapperLocations(resources); sqlSessionFactoryBean.setTypeAliasesPackage("com.xxx.xx.entity"); return sqlSessionFactoryBean.getObject(); }
springboot打包啟動時報mybatis的typeAlias類名找不到的錯誤
springBoot項(xiàng)目在IDEA上面正常但是打包之后運(yùn)行 出錯,錯誤大致為mybatis解析Mapper.xml時 typeAlias找不到XX類
Mapper里面的標(biāo)簽:
<select parameterType="XXClass" resultMap="XXMap">
這種寫法在IDEA里面運(yùn)行沒問題 打包就有問題
正確寫法:
<select parameterType="cn.test.xxx.XXClass" resultMap="XXMap">
代碼中的parameterType必須要用全路徑才行 否則就出錯。
以上為個人經(jīng)驗(yàn),希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
Spring Boot中l(wèi)ombok的安裝與使用詳解
這篇文章主要給大家介紹了關(guān)于Spring Boot中l(wèi)ombok安裝與使用的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧。2017-09-09SpringCloud使用AOP統(tǒng)一處理Web請求日志實(shí)現(xiàn)步驟
這篇文章主要為大家介紹了SpringCloud使用AOP統(tǒng)一處理Web請求日志實(shí)現(xiàn)步驟,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-08-08SpringBoot @PostConstruct和@PreDestroy的使用說明
這篇文章主要介紹了SpringBoot @PostConstruct和@PreDestroy的使用說明,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2021-09-09基于JavaMail的Java實(shí)現(xiàn)簡單郵件發(fā)送功能
這篇文章主要為大家詳細(xì)介紹了基于JavaMail的Java實(shí)現(xiàn)簡單郵件發(fā)送功能,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-09-09多數(shù)據(jù)源@DS和@Transactional實(shí)戰(zhàn)
這篇文章主要介紹了多數(shù)據(jù)源@DS和@Transactional實(shí)戰(zhàn),具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2021-09-09基于Java?利用Mybatis實(shí)現(xiàn)oracle批量插入及分頁查詢
這篇文章主要介紹了基于Java?利用Mybatis實(shí)現(xiàn)oracle批量插入及分頁查詢,文章圍繞主題展開詳細(xì)的內(nèi)容介紹,需要的小伙伴可以參考一下2022-07-07