请选择 进入手机版 | 继续访问电脑版

[java] springboot 怎样 取消starter的自动 注入

[复制链接]
查看79 | 回复9 | 2021-9-13 02:19:06 | 显示全部楼层 |阅读模式
目次

springboot 取消starter的自动 注入

starer是spring boot中一个很告急 的概念,starter相称 于一个模块,它能将所必要 的的依赖 整合在一起并对模块内的bean自动 装配到spring IOC容器,使用 者只必要 在maven中依赖 相应的starter包并无需做过多的依赖 即可举行 开发 。

看例子

比如,我们导入了mybatis干系 的依赖 ,但是我大概 暂时 没用到数据库,以是 就没有做数据库干系 的设置 ,这时间 项目就会无法启动

  1. 2020-03-08 22:13:10.396 WARN 10692 --- [ main] ConfigServletWebServerApplicationContext : Exception encountered during context initialization - cancelling refresh attempt:
  2. org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'dataSource' defined in class path resource
  3. [org/springframework/boot/autoconfigure/jdbc/DataSourceConfiguration$Hikari.class]: Bean instantiation via factory method failed;
  4. nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate
  5. [com.zaxxer.hikari.HikariDataSource]: Factory method 'dataSource' threw exception;
  6. nested exception is org.springframework.boot.autoconfigure.jdbc.DataSourceProperties$DataSourceBeanCreationException: Failed to determine a suitable driver class
复制代码

由于 springboot中默认的数据库毗连 池是hikari,你没有在application.properties内里 举行 数据库干系 的设置 的话,那么就会无法自动 装载dataSource

  1. Error creating bean with name 'dataSource' defined in class path resource [org/springframework/boot/autoconfigure/jdbc/DataSourceConfiguration$Hikari.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [com.zaxxer.hikari.HikariDataSource]
复制代码

重点来了

怎样 取消干系 starer的自动 注入?

我们还是以数据库的这个为例子:

  1. @SpringBootApplication(exclude = DataSourceAutoConfiguration.class)
复制代码

那么,就必要 在启动类加上如上设置 ,取消DataSourceAutoConfiguration的自动 注入

springboot 怎样
取消starter的自动

注入

springbootApplication是一个组合注解,实在 内里 真正实现自动 注入功能的,是这个EnableAutoConfiguration注解

SpringBoot 自动 注入标题

  1. Description:
  2. Field service in com.test.controller.UserController required a bean of type 'com.test.service.UserService' that could not be found.
  3. Action:
  4. Consider defining a bean of type 'com.test.service.UserService' in your configuration.
复制代码

项目启动的时间 出现出现标题

  1. run
复制代码

springboot 怎样
取消starter的自动

注入

  1. controller
复制代码

springboot 怎样
取消starter的自动

注入

  1. service
复制代码

springboot 怎样
取消starter的自动

注入

  1. dao
复制代码

springboot 怎样
取消starter的自动

注入

设置 文件如下

springboot 怎样
取消starter的自动

注入

项目目次

springboot 怎样
取消starter的自动

注入

找了几个类,该注解的也注解了。

以上为个人履历 ,渴望 能给大家一个参考,也渴望 大家多多支持脚本之家。


免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复

使用道具 举报

avatar 白云苍狗N | 2021-9-13 04:11:16 | 显示全部楼层
有品位!
回复

使用道具 举报

avatar 干将发硎鞘 | 2021-9-20 19:56:16 | 显示全部楼层
我回帖admin楼主给加积分吗?
回复

使用道具 举报

avatar 甜心猫舍 | 2021-10-4 09:48:20 | 显示全部楼层
支持楼上的!
回复

使用道具 举报

avatar lj1282502016 | 2021-10-16 01:19:10 | 显示全部楼层
楼上长在线啊?
回复

使用道具 举报

avatar ssffgsa | 6 天前 | 显示全部楼层
关注一下!
回复

使用道具 举报

楼上的这是啥态度呢?
回复

使用道具 举报

骂人也是要有水平的!
回复

使用道具 举报

avatar 123457373 | 1 小时前 | 显示全部楼层
admin楼主是男的还是女的?
回复

使用道具 举报

avatar 123457489 | 1 小时前 | 显示全部楼层
脑残片admin楼主今天吃了么?
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则