有jdbc.properties文件的數據源的問題:
編譯的時候會出現${jdbc.driver}不正確問題,把值寫進去就不會報錯,jdbc配置文件的數據也不錯,這就說明的在編譯時,參數還沒有更換成jdbc.driver就直接把字符串就編譯過去了。
我在網上查了半天,都不太理想,我的解決方案是:
<!--
2. mybatis的SqlSession的工廠: SqlSessionFactoryBean dataSource:引用數據源
MyBatis定義數據源,同意加載配置
-->
<bean id="sessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
<property name="dataSource" ref="dataSource"></property>
<property name="configLocation" value="classpath:config/mybatis-config.xml" />
</bean>
<!--
3. mybatis自動掃描加載Sql映射文件/接口 : MapperScannerConfigurer sqlSessionFactory
basePackage:指定sql映射文件/接口所在的包(自動掃描)
-->
<bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
<property name="basePackage" value="com.ust.mapper"></property>
<property name="sqlSessionFactoryBeanName" value="sessionFactory"></property>
</bean>
將ref="sessionFactory"改為value=“sessionFactory”,結果就成了。
我又查了一下ref和value的區別:ref 是直接加載sqlsessionfactory,而value是新建sqlsessionfactory。小白我也不太懂這個。