SpringBoot Test类注入失败的解决

如下所示

本来 bookService的引用一直是null。

导致每次测试都报空指针异常。

然后现在继承相应的 ApplicationTests类,然后使用@Component将该类注册为组件。就可以正常注入了。

补充:关于springboot test @Mapper ,@Autiwired注入无效的问题

@SpringBootTest()
@RunWith(SpringRunner.class)
public class ProductMapperTest {
  @Autowired
  ProductMapper productMapper;

为了给mapper接口 自动根据一个添加@Mapper注解的接口生成一个实现类

怎么注入都是失败,ProductMapper 使用@Mapper 注解,这个不能注入到spring 容器中(其中原因还是不了解)。

@Autowired 注入不进去的。

@Repository
@Mapper
public interface ProductMapper {

这下能注入容器中了。

以上为个人经验,希望能给大家一个参考,也希望大家多多支持我们。如有错误或未考虑完全的地方,望不吝赐教。

(0)

相关推荐

  • springboot 实现bean手动注入操作

    1.springboot启动类实现接口ApplicationListener<ContextRefreshedEvent>,实现方法onApplicationEvent,初始化上下文 package test.projectTest; import org.mybatis.spring.boot.autoconfigure.MybatisAutoConfiguration; import org.springframework.boot.SpringApplication; import or

  • 解决springboot无法注入JpaRepository的问题

    使用内置服务器启动springboot项目时,会从@SpringBootApplication修饰类所在的包开始,加载当前包和所有子包下的类,将由@Component @Repository @Service @Controller修饰的类交由spring进行管理. package com.facade; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure

  • springboot2.x解决运行顺序及Bean对象注入顺序的问题

    1 前言 通过指定接口,重写指定方法,可以在Bean对应的生命周期方法中执行相应的程序 2 测试 本文将分析几个Bean对象,为它们设置优先级(通过@Order),然后再打断点调试,测试各种生命周期方法的运行的顺序 在项目当中最让人头疼的就是bean对象不被注入的问题,通过本文,你可以很好的解决这个问题. 先看看本程序使用的依赖 <?xml version="1.0" encoding="UTF-8"?> <project xmlns="

  • SpringBoot属性注入的两种方法

    1.实现方式一:Spring中的@PropertySource @Component @PropertySource("classpath:user.properties") public class UserInfo { @Value("${user.username}") private String username; @Value("${user.password}") private String password; @Value(&q

  • 解决SpringBoot 测试类无法自动注入@Autowired的问题

    原来的测试类的注解: @RunWith(SpringRunner.class) @SpringBootTest 一直没法自动注入,后来在@SpringBootTest, 加入启动类Application后就可以了 @RunWith(SpringRunner.class) @SpringBootTest(classes = Application.class) 补充:spring boot项目单元测试时,@Autowired无法注入Service解决方式 首先确认: 测试类所在包名要和启动类一致

  • 关于SpringBoot使用Redis空指针的问题(不能成功注入的问题)

    自己的一个小项目使用redis在一个类里可以注入成功,而在另一个类以却不能注入成功 不多bb直接上代码 package com.common.utils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.data.redis.core.BoundListOperations; import org.springframework.data.redis.core.Re

  • SpringBoot Test类注入失败的解决

    如下所示 本来 bookService的引用一直是null. 导致每次测试都报空指针异常. 然后现在继承相应的 ApplicationTests类,然后使用@Component将该类注册为组件.就可以正常注入了. 补充:关于springboot test @Mapper ,@Autiwired注入无效的问题 @SpringBootTest() @RunWith(SpringRunner.class) public class ProductMapperTest { @Autowired Prod

  • Spring自动注入失败的解决方法

    Spring自动注入失败如何解决? 我有一个被Spring @Service注解的类(MileageFeeCalculator),它有一个用@Autowired注入的变量(rateService),但是当我用这个变量的时候,它显示为null.日志显示MileageFeeCalculator bean和MileageRateService bean都被创建了,但是当我调用service上的mileageCharge ()方法时,就会报NullPointerException错误.为什么Spring

  • 关于mybatis mapper类注入失败的解决方案

    重新创建了一个项目,代码结构有所改变,结果在启动服务时,一直报如下错误 严重: Exception sending context initialized event to listener instance of class org.springframework.web.context.ContextLoaderListener org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating b

  • SpringBoot@Componet注解注入失败的问题

    目录 @Componet注解注入失败 问题描述 解决方法 SpringBoot @component的作用 介绍 举例说明 总结 @Componet注解注入失败 问题描述 在springboot程序编写中,明明给Person类加了@Component注解,容器却显示找不到Person类的Bean对象. 网上找了很多种常规解法,发现都无效,后来才意识到,可能是包扫描的问题,由于当时我的主程序是放在一个与主程序同名的文件夹下,根据默认包扫描规则–扫描主程序所在包及其所有子包中的类,那么方在domai

  • 因Spring AOP导致@Autowired依赖注入失败的解决方法

    发现问题: 之前用springAOP做了个操作日志记录,这次在往其他类上使用的时候,service一直注入失败,找了网上好多内容,发现大家都有类似的情况出现,但是又和自己的情况不太符合.后来总结自己的情况发现:方法为private修饰的,在AOP适配的时候会导致service注入失败,并且同一个service在其他的public方法中就没有这种情况,十分诡异. 解决过程: 结合查阅的资料进行了分析:在org.springframework.aop.support.AopUtils中: publi

  • RocketMQTemplate 注入失败的解决

    RocketMQTemplate 注入失败 在使用rocketmq 发送消息时,会发现 @Autowired private RocketMQTemplate rocketMQTemplate; 注入RocketMQTemplate 失败. 解决方案 究其原因是因为,配置文件中,我们没有添加 上图中蓝色的两行代码,指定发送的组名.写上后,问题解决. 好了,再来说说RocketMQTemplate 的基本使用吧~ RocketMQTemplate的使用 1.pom.xml依赖 <dependenc

  • Spring 父类变量注入失败的解决

    目录 Spring 父类变量注入失败 下面小记下这个过程 Spring通过父类注入公用属性的技巧 XML配置方式提取父类 Annotation方式提取父类 Spring 父类变量注入失败 昨天遇到一个Action里面Service注入失败,换种说法应该说是根本没有发生注入,本来很简单的一个问题,但由于在项目中多个Action进行了继承,才最终导致了这个看似奇怪的问题. 下面小记下这个过程 收到同事问题,"有个Action请求一直调用报控指针,service一直是空的导致的!" 初步看了

  • springboot创建文件夹失败的解决

    目录 springboot创建文件夹失败 springboot日志目录创建失败 springboot创建文件夹失败 今天用idea写springboot工程,明明在idea中创建了两个文件夹 可是当用图标一步步打开时却发现没有mapper和model文件夹 最后发现该项目在桌面,idea没有写权限,需要使用管理员模式打开idea,问题得解. springboot日志目录创建失败 遇到启动项目出现日志目录创建失败的问题 第一种可能,你的如下图箭头所指位置中没指定启动的配置文件,导致项目启动找不到你

  • springboot多模块化整合mybatis,mapper自动注入失败问题及解决

    目录 springboot多模块化整合mybatis,mapper自动注入失败 问题 解决 springboot mapper注入失败的一种原因 具体情况是 解决办法 springboot多模块化整合mybatis,mapper自动注入失败 问题 启动类添加@MapperScan或@ComponentScan,mapper类添加@Mapper或@Repository ==> Consider defining a bean of type 'com.ten.mapper.UserMapper'

  • springboot使用@value注入配置失败的解决

    目录 springboot使用@value注入配置文件失败 问题解决方向一 问题解决方向二 @Value注入失败,注入值为null的问题 大概就是下面这样 结果不知道为什么,@Value注入一直为空?? 原因如下 解决办法 springboot使用@value注入配置文件失败 遇到的问题原因是:类中注入对象不能用static. 问题解决方向一 1.改为如图示,去掉static 问题解决方向二 1.仍然定义静态变量,但在其set方法上使用@Value进行赋值 2.仍然定义静态变量,同时定义一个普通

随机推荐