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

