前言
最近在重新看 <<Java EE 联网轻量级框架整合开发>>
,也就是这本书,最最后一章有一个模拟高并发抢红包的案例,其中作者采用了纯 java bean 的配置方式,但是我按照作者的流程走下来,发现总是报如题的错误,但是代码和作者所写的又没有什么差别,很奇怪。在网上搜了很多博客都没有相关的错误,甚至于有些博客写的注解配置和该书作者的配置完全相同,且能够运行,我从网上下载下了博客作者的 demo,在本地运行,发现也是报同样的错误,令人非常沮丧,只好决定自己去探索一下。
探索过程
文件结构和配置文件
文件结构
配置文件 RootConfig
@Configuration
@ComponentScan(value="springMybatisNoXml.*", includeFilters= {
@Filter(type = FilterType.ANNOTATION , value ={
Repository.class})})
@EnableTransactionManagement
@MapperScan("springMybatisNoXml")
public class RootConfig {
private DataSource dataSource = null ;
/*
* 注册数据库 Bean
*/
@Bean(name = "dataSource")
public DataSource initDataSource() {
if(dataSource != null) {
return dataSource;
}
Properties props = new Properties();
props.setProperty("driverClassName", "com.mysql.jdbc.Driver");
props.setProperty(