spring+mybatis 注入properties文件中属性失败导致datasource加载失败的原因和解决

报错

HTTP Status 500 - Request processing failed; nested exception is org.springframework.transaction.CannotCreateTransactionException: Could not open JDBC Connection for transaction; nested exception is java.sql.SQLException: ${jdbc.driver}

相关配置信息

	
	
	
	
		
		
		
		
		
		
		
		
		

		
		
		
		


		
		
		
		
		
		
		
		
		
		
		
		

		
		
		
	

	
	
		
		
	

	
	
		 
		 
 		 
	

分析:

因为我配置了一个定时任务,而访问定时任务是可以启动并且能够读取到properties中的配置信息的

原因是在spring进行属性注入之前datasource就已经进行了初始化了,进而导致

java.sql.SQLException: ${jdbc.driver}

因为你使用的在未注入前本来就是 这个字符串


经过我一番查找(百度)发现仅仅需要对mybatis的扫描器做一些改动就可以了


改动如下

   
    
        
        
         
    


这样就可以完美解决该问题了.


另外mark一下 spring注入properties文件的另外一个中方式;



		
			
				classpath:config/config.properties
			
		
	






















你可能感兴趣的:(Spring)