无法自动装配。未找到 ‘DataSource‘ 类型的 Bean

Could not autowire. No beans of ‘DataSource’ type found

初学Springboot整合JDBC的时候报错

在这里插入图片描述

解决方法:

  1. 检查项目结构,主启动类位置是否正确
  2. 把自动装配@Autowired换成@Resource,
    @Autowired是按类型查找Bean,@Resource是按名查找
  3. 可能是缺少依赖,在pom.xml文件中添加下面依赖其中之一
		<dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-jdbc</artifactId>
        </dependency>
        
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-data-jpa</artifactId>
        </dependency>
  • 11
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 8
    评论
1 Spring基本特征 6 2 Spring的组成 6 2.1 Spring的jar包 6 2.2 Spring配置文件 7 2.3 Spring API 8 3 Spring基本功能详解 8 3.1 SpringIOC 8 3.2别名Alias 11 别名拓展: 11 3.3 Spring容器内部对象的创建 12 Spring容器内部对象创建拓展: 12 3.3.1使用类构造器实例化(默认无参数) 14 3.3.2使用静态工厂方法实例化(简单工厂模式) 14 3.3.3初始化(创建)bean时机 15 Lazy-init初始化bean的时机拓展: 15 3.4 Bean的作用域 16 Scope单例多例作用域拓展: 16 3.4.1 singleton(默认值) 16 3.4.2 prototype 17 3.4.3 Request 17 3.4.4 Session 18 3.4.5 Global session 18 3.4.6 指定Bean的初始化方法和销毁方法 18 Bean的初始化和销毁拓展: 18 Spring的IOC总结: 20 3.5 依赖注入(DI) 20 3.5.1 使用构造器注入 20 3.5.2 使用属性setting方法进行注入 21 3.5.3 装配list集合 22 3.5.4 装配set集合 22 3.5.5 装配map 22 3.5.6 装配Properties 23 3.6 注解注入 23 注解注入拓展: 23 3.6.1 @Autowired 26 3.6.2 @Qualifier 27 3.6.3 @Resource 27 3.6.4 @PostConstruct 28 3.6.5 @PreDestroy 28 注解注入拓展: 28 3.7扫描注入 30 注解扫描拓展: 32 Mvc用注解写: 34 Spring容器IOC和di的整个启动过程: 38 3.8 spring中的继承 38 拓展spring为类中的属性赋值: 40 小结: 47 面向接口编程: 47 4 面向切面编程 52 4.1 代理模式 52 代理模式拓展: 52 4.1.1 JDK动态代理 58 JDK动态代理拓展: 59 4.1.2 CGLIB做代理 66 CGLIB动态代理拓展: 68 4.1.3 Spring的动态代理 71 4.2 AOP编程 71 4.2.1概念: 71 SpringAOP概念拓展: 73 之前实现了目标方法的动态调用,现在来实现切面的动态调用。 74 4.2.2 AOP实现的两种模式 78 4.2.2.1 xml形式 78 XML形式拓展: 81 异常通知处理例子: 91 不用spring异常通知,另一种处理异常 96 4.2.2.2Aop注解形式(了解) 99 注解注入拓展: 103 5 Spring数据库 106 5.1 Spring+JDBC 106 5.1.1 Jdbc编程特点 106 5.1.2引入DataSource 106 5.1.3 核心类JdbcTemplate 106 5.1.4 使用JdbcTemplate 106 5.1.5 继承JdbcDaoSupport 107 5.1.6 使用properties文件 107 5.1.7 RowMapper的使用 107 拓展: 108 DataSource注入的三种方式: 108 5.1.8声明式事务管理 116 5.1.8.1Spring的事务管理器 117 5.1.8.2Spring事务的传播属性 117 5.1.8.3Spring事务的隔离级别 117 拓展: 118 5.1.8.4以XML配置的 形式 119 拓展: 120 5.1.8.5以注解方式配置 125 拓展: 127 5.1.9使用CGLIB以XML形式配置事务 130 5.2 Spring+Hibernate 131 5.2.1 HibernateTemplate模板 131 5.2.2 声明式事务 131 配置XML文件 131 拓展: 132 注解形式: 137 拓展: 138 6 Struts2+spring+hibernate 141 6.1 需要添加的jar包 141 6.2 Spring融合web服务器 141 6.3 struts.xml文件 143 6.4 OpenInSessionView 143 拓展: 144 实例: 146
第一部分 Spring基础  第1章 开始Spring之旅   1.1 为什么使用Spring    1.1.1 J2EE开发者的一天    1.1.2 Spring的承诺   1.2 Spring是什么   1.3 开始Spring之旅   1.4 理解反向控制    1.4.1 依赖注入    1.4.2 IoC应用    1.4.3 企业级应用中的IoC   1.5 应用AOP    1.5.1 AOP介绍    1.5.2 AOP使用    1.5.3 企业级应用中的AOP   1.6 Spring比较    1.6.1 比较Spring和EJB    1.6.2 关于其他轻量级容器    1.6.3 Web框架    1.6.4 持久层框架   1.7 小结  第2章 装配Bean   2.1 容纳你的Bean    2.1.1 BeanFactory介绍    2.1.2 使用应用上下文    2.1.3 Bean的生命   2.2 基本装配    2.2.1 使用XML装配    2.2.2 添加一个Bean    2.2.3 通过Set方法注入依赖    2.2.4 通过构造函数注入依赖   2.3 自动装配    2.3.1 处理自动装配中的不确定性    2.3.2 混合使用自动和手动装配    2.3.3 缺省自动装配    2.3.4 何时采用自动装配   2.4 使用Spring的特殊Bean    2.4.1 对Bean进行后处理    2.4.2 对Bean工厂进行后处理    2.4.3 分散配置    2.4.4 定制属性编辑器    2.4.5 解析文本信息    2.4.6 监听事件    2.4.7 发布事件    2.4.8 感知其他Bean   2.5 小结  第3章 创建切面   3.1 AOP介绍    3.1.1 定义AOP术语    3.1.2 Spring的AOP实现   3.2 创建通知    3.2.1 前置通知    3.2.2 后置通知    3.2.3 环绕通知    3.2.4 异常通知    3.2.5 引入通知   3.3 定义切入点    3.3.1 在Spring中定义切入点    3.3.2 理解Advisor    3.3.3 使用Spring的静态切入点    3.3.4 使用动态切入点    3.3.5 切入点实施   3.4 创建引入    3.4.1 实现IntroductionInterceptor    3.4.2 创建一个引入Advisor    3.4.3 谨慎使用引入通知   3.5 使用ProxyFactoryBean   3.6 自动代理    3.6.1 BeanNameAutoProxyCreator    3.6.2 DefaultAdvisorAutoProxyCreator    3.6.3 元数据自动代理   3.7 小结 第二部分 Spring在业务层的应用  第4章 征服数据库   4.1 学习Spring的DAO理念    4.1.1 理解Spring的DataAccessException    4.1.2 与DataSource一起工作    4.1.3 一致的DAO支持   4.2 在Spring中使用JDBC    4.2.1 JDBC代码的问题    4.2.2 使用JdbcTemplate    4.2.3 把操作创建成对象    4.2.4 自增键   4.3 介绍Spring的ORM框架支持   4.4 用Spring整合Hibernate    4.4.1 Hibernate概览    4.4.2 管理Hibernate资源    4.4.3 用HibernateTemplate访问Hibernate    4.4.4 HibernateDaoSupport的子类   4.5 Spring和JDO    4.5.1 配置JDO    4.5.2 用JdoTemplate访问数据库   4.6 Spring和iBATIS    4.6.1 配置SQL Map    4.6.2 使用SqlMapClientTemplate   4.7 Spring和OJB   4.8 小结  第5章 事务管理   5.1 理解事务    5.1.1 仅用4个词解释事务    5.1.2 理解Spring对事务管理的支持    5.1.3 介绍Spring的事务管理器   5.2 在Spring中编写事务   5.3 声明式事务    5.3.1 理解事务属性    5.3.2 声明一个简单的事务策略   5.4 通过方法名声明事务    5.4.1 使用NameMatchTransactionAttributeSource    5.4.2 名称匹配事务的捷径   5.5 用元数据声明事务    5.5.1 用元数据来书写事务属性    5.5.2 用Commons Attributes声明事务   5.6 修剪事务声明    5.6.1 从父TransactionProxyFactoryBean继承    5.6.2 自动代理事务   5.7 小结  第6章 远程调用   6.1 Spring远程调用概览   6.2 与RMI一起工作    6.2.1 连接RMI服务    6.2.2 输出RMI服务   6.3 使用Hessian和Burlap的远程调用    6.3.1 访问Hessian/Burlap服务    6.3.2 用Hessian或Burlap公开Bean的功能   6.4 使用HTTP invoker    6.4.1 通过HTTP访问服务    6.4.2 把Bean作为HTTP服务公开   6.5 使用EJB    6.5.1 访问EJB    6.5.2 用Spring开发EJB   6.6 使用JAX-RPC的Web Service    6.6.1 用JAX-RPC应用一个Web Service    6.6.2 在Spring里置入一个Web Service   6.7 小结  第7章 访问企业服务   7.1 从JNDI中获取对象    7.1.1 使用传统的JNDI    7.1.2 代理JNDI对象   7.2 发送电子邮件   7.3 调度任务    7.3.1 使用Java Timer调度任务    7.3.2 使用Quartz调度器    7.3.3 按调度计划调用方法   7.4 使用JMS发送消息    7.4.1 使用JMS模板发送消息    7.4.2 消费消息    7.4.3 转换消息   7.5 小结 第三部分 Spring在Web层的应用  第8章 建立Web层   8.1 开始Spring MVC之旅    8.1.1 请求生命中的一天    8.1.2 配置DispatcherServlet    8.1.3 Spring MVC概述   8.2 将请求映射到控制器    8.2.1 将URL映射到Bean名称    8.2.2 使用SimpleUrlHandlerMapping    8.2.3 使用元数据映射控制器    8.2.4 使用多映射处理器   8.3 用控制器处理请求    8.3.1 编写一个简单的控制器    8.3.2 处理命令    8.3.3 处理表单提交    8.3.4 用向导处理复杂表单    8.3.5 在一个控制器中处理多个动作    8.3.6 使用一次性控制器   8.4 视图解析    8.4.1 使用模板视图    8.4.2 解析视图Bean    8.4.3 选择视图解析器   8.5 使用Spring的绑定标签   8.6 处理异常   8.7 小结  第9章 其他视图技术   9.1 使用Velocity模板    9.1.1 定义Velocity视图    9.1.2 配置Velocity引擎    9.1.3 解析Velocity视图    9.1.4 格式化日期和数字    9.1.5 暴露请求和会话属性    9.1.6 在Velocity中绑定表单域   9.2 使用FreeMarker    9.2.1 构造一个FreeMarker视图    9.2.2 配置FreeMarker引擎    9.2.3 解析FreeMarker视图    9.2.4 在FreeMarker中绑定表单域   9.3 使用Tile设计页面布局    9.3.1 Tile视图    9.3.2 Tile控制器   9.4 产生非HTML输出    9.4.1 产生Excel工作表    9.4.2 产生PDF文档    9.4.3 产生其他非HTML文件   9.5 小结  第10章 使用其他Web框架   10.1 使用Jakarta Struts    10.1.1 注册Spring插件    10.1.2 实现知晓Spring的Struts action    10.1.3 委托action   10.2 使用Tapestry    10.2.1 替换Tapestry引擎    10.2.2 装载Spring Bean至Tapestry页面中   10.3 集成JavaServer Faces    10.3.1 解析变量    10.3.2 发布请求已处理事件   10.4 集成WebWork    10.4.1 WebWork1    10.4.2 XWork/WebWork2   10.5 小结  第11章 保护Spring 应用程序   11.1 Acegi安全系统介绍    11.1.1 安全拦截器    11.1.2 认证管理器    11.1.3 访问决策管理器    11.1.4 运行身份管理器   11.2 管理身份验证    11.2.1 配置ProviderManager    11.2.2 根据数据库验证身份    11.2.3 根据LDAP仓库进行身份验证    11.2.4 基于Acegi和Yale CAS实现单次登录   11.3 控制访问    11.3.1 访问决策投票    11.3.2 决定如何投票    11.3.3 处理投票弃权   11.4 保护Web应用程序    11.4.1 代理Acegi的过滤器    11.4.2 强制Web安全性    11.4.3 处理登录    11.4.4 设置一个安全上下文    11.4.5 确保通道安全性    11.4.6 使用Acegi的标签库   11.5 保护方法调用    11.5.1 创建一个安全切面    11.5.2 使用元数据保护方法   11.6 小结

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值