国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

spring mybatis解決application.properties注入變量問題

2019-11-14 22:40:50
字體:
來源:轉載
供稿:網友
sPRing mybatis解決application.properties注入變量問題問題描述

在使用spring mybatis的時候配置數據源dataSource,為了修改方便,新建了一個application.properties其中保存了jdbc.url,jdbc.username等信息。這樣在dataSource定義的時候 可以直接使用jdbc.url這些變量。使用方式為 ${jdbc.url},可是配置完成之后,啟動程序報錯,報錯原因是application中的jdbc.url變量沒有注入到datasource中。

問題原因

在spring里使用org.mybatis.spring.mapper.MapperScannerConfigurer 進行自動掃描的時候,設置了sqlsessionFactory 的話,可能會導致PropertyPlaceholderConfigurer失效,也就是用${jdbc.username}這樣之類的表達式,將無法獲取到properties文件里的內容。

導致這一原因是因為,MapperScannerConigurer實際是在解析加載bean定義階段的,這個時候要是設置sqlSessionFactory的話,會導致提前初始化一些類,這個時候,PropertyPlaceholderConfigurer還沒來得及替換定義中的變量,導致把表達式當作字符串復制了。

解決方法

1.MapperScannerConigurer如果設置了sqlSessionFactory屬性,則注釋掉該屬性,并且保證sqlSessionFactory的id為sqlSessionFactory。代碼如下:

<bean class="org.mybatis.spring.mapper.MapperScannerConfigurer"><property name="basePackage" value="mybatis_test.client" /><property name="markerInterface" value="mybatis_test.client.SuperMapper" /><!-- <property name="sqlSessionFactory" ref="sqlSessionFactory" /> --></bean>

2.將sqlSessionFactory改為sqlSessionFactoryBeanName代碼如下:

<!-- <property name="sqlSessionFactory" ref="sqlSessionFactory" /> --><property name="sqlSessionFactoryBeanName" value="sqlSessionFactory" />
環境配置

maven配置

<dependency>    <groupId>org.mybatis</groupId>    <artifactId>mybatis</artifactId>    <version>3.2.7</version></dependency><dependency>    <groupId>org.mybatis</groupId>    <artifactId>mybatis-spring</artifactId>    <version>1.2.2</version></dependency><!-- spring 核心4.1.4 --><dependency>    <groupId>org.springframework</groupId>    <artifactId>spring-core</artifactId>    <version>4.1.4.RELEASE</version></dependency>
參考

參考oschina上的解決方法

spring引入properties中的變量

通過配置

<!-- 當需要多個配置文件的時候,將ignore-unresolvable設置為"true"- --><context:property-placeholder ignore-unresolvable="true" location="classpath:application.properties" />

上一篇:java類

下一篇:[轉]JAVA實現文件壓縮

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 云阳县| 广丰县| 墨脱县| 广宗县| 阜城县| 福泉市| 文成县| 吉隆县| 高陵县| 云阳县| 西昌市| 财经| 绥滨县| 常宁市| 若尔盖县| 吉水县| 嘉兴市| 古交市| 阳江市| 萨嘎县| 翼城县| 新龙县| 遵化市| 普定县| 固原市| 新郑市| 阿瓦提县| 永定县| 平远县| 宁蒗| 江阴市| 宣城市| 大英县| 庆云县| 濮阳县| 肇东市| 泾川县| 木兰县| 宜昌市| 同德县| 山丹县|