BeanNotOfRequiredTypeException

正确解决org.springframework.beans.factory.BeanNotOfRequiredTypeException异常的有效解决方法 阅读详情

解决:BeanNotOfRequiredTypeException

问题描述:在使用@Transactional注解处理事务(未使用AOP),在通过容器获取对象的时候出现了错误。

ApplicationContext context = new ClassPathXmlApplicationContext("applicationContext.xml");
UserService userService =  context.getBean("userService",UserServiceImpl.class);

userService:容器通过动态代理实现的对象,继承UserService接口

UserServiceImpl:是UserService接口的实现类

错误信息:

org.springframework.beans.factory.BeanNotOfRequiredTypeException: Bean named 'userService' is expected to be of type 'com.rui.service.impl.UserServiceImpl' but was actually of type 'com.sun.proxy.$Proxy19'

问题分析:

  • 添加了事务,Spring容器会产生UserService类相应的代理对象
  • 默认采用的jdk的动态代理
  • jdk的动态代理机制,是实现同一个接口。代理对象为接口类型的数据
  • 代理对象与被代理对象属于兄弟关系,不能相互转化

问题解决方案:

getBean()时,声明bean的类型时,需要声明为接口类型。

若声明为被代理类UserServiceImpl类型,而代理类型为接口UserService类型。则无法转化

ApplicationContext context = new ClassPathXmlApplicationContext("applicationContext.xml");
UserService userService =  context.getBean("userService",UserService.class);
Bean named‘ddlApplicationRunner‘is expected to be of type ‘org.springframework.boot.Runner‘ springboot3.1.7整合mybatisplus3.5.3.2版本报错,sringboot3.x整合myabtis报错 阅读详情

相关推荐

微信小程序 - 接入腾讯地图 SDK 及详细使用教程,结合小程序 mpa 地图组件展示腾讯地图(基础使用 / 授权当前位置 / 配合小程序map组件的使用 / 腾讯地图逆地址解析 / 坐标系的转化)

微信小程序使用腾讯地图完整流程,微信小程序 接入腾讯地图,如何在微信小程序中接入腾讯地图,微信小程序引入腾讯地图API方法,腾讯地图小程序SDK,微信小程序实现使用腾讯地图SDK步骤详细介绍,微信小程序接入腾讯地图(线路规划、逆解析)、高德地图,微信小程序之使用腾讯地图,微信小程序 接入第三方地图,小程序服务器配置地图,微信小程序接入腾讯地图,微信小程序插入腾讯地图教程,微信小程序如何调用腾讯地图,如何在微信小程序中接入腾讯地图,微信小程序腾讯地图SDK使用方法,在微信小程序上创建一个简单的腾讯地图,微信小

✅ 精选推荐文章 1万+

Spring报错BeanNotOfRequiredTypeException

错就错在我注入时候写得不规范,importMapper 在 Ioc 查找的时候,找到了另外一个 Mapper!之前一直认为对象名称无所谓,没想到,还是应该老老实实的按照规范去写!心想肯定是哪里注入时类型搞错了,结果查了一个多小时,愣是没发现!网上查了一下,基本问题都是说注入时依赖的不是接口,而是一个具体实现类,但是我这个明显注入时候是 mybatis 的接口,怎么可能会有这种问题?后来又查了半天,巧合把这个注入对象名字改了,importMappertt,结果一切都好了!上述代码是 Mybatis 的接口;

编码行者的博客 3586

产品路线图的三种模型(RICE/MoSCoW/Kano),教你如何对需求进行优先级排序

RICE/MoSCoW/Kano三种模型,教你如何对需求进行优先级排序。 也许你会让业务提供一份ROI,记得前不久参加过一场立项会评审,一位很有意思的小产品在会上讲不清楚ROI,评审们要求会后重新梳理,小产品表达不要为难业务方干一些他们不擅长的事了。这个看似笑话的经历,背后隐藏着价值判断已经流于形式。 也许你会要求业务方直接给出需求优先级列表,把任务分为P0到P5,这样的划分除了按需求本质的优先级还同时考虑了开发资源、开发难度等问题。毫不夸张地说,我曾经拿到一张全是P0级别的需求清单,如果一切任务都是高

wenyusuran的专栏 5486

BeanNotOfRequiredTypeException(Bean不是所需类型异常)可能的原因和解决方法

检查代码中获取 Bean 的地方,确保进行类型转换时使用的是正确的目标类型。方法时,提供 Bean 的名称和类型,以确保获取到正确的 Bean。如果可能,尽量通过 Bean 的名称获取,而不是直接通过类型获取。方法中提供 Bean 名称和类型,以明确指定要获取的 Bean。确保在容器中只有一个特定名称的 Bean,或者使用指定类型的。确保注入的字段或方法参数的类型与所需的 Bean 类型一致。进行类型检查,以确保获取到的 Bean 实际上是所需类型。在容器中存在多个相同名称的 Bean,但它们的类型不同。

Java开源程序猿 3109

解决BeanNotOfRequiredTypeException办法(@Autowired和@Resource注解的不同)

一般在使用的方式注入的 出现的,具体是由于spring采用代理的机制导致的,看使用的代码: 不能使用的动态代理注入,原因是的动态代理不支持注入,只支持方式注入;可以使用动态代理注入;如果要使用的方式,必须使用代理;当然了推荐使用的方式,基于接口编程的方式!使用也是可以的,建议试一下这个注解: 3种配置,只要使用一种即可,设置为即使用的方式代理对象。附:的代理判断逻辑:...

不见其长,日有所长 4298

SpringBoot结合MybatisPlus启动报错:BeanNotOfRequiredTypeException

org.springframework.beans.factory.BeanNotOfRequiredTypeException: Bean named 'ddlApplicationRunner' is expected to be of type 'org.springframework.boot.Runner' but was actually of type 'org.springframework.beans.factory.support.NullBean'

m0_73956769的博客 1804

解决:BeanNotOfRequiredTypeException办法 @Autowired和@Resource注解的不同

错误信息:     org.springframework.beans.factory.BeanNotOfRequiredTypeException: Bean named 'aisleService' must be of type [com.gdie.whlocation.service.impl.AisleService], but was actually of type [$Pro

mingtianhaiyouwo的博客 1万+

解析Spring框架中的BeanNotOfRequiredTypeException异常

BeanNotOfRequiredTypeExceptionSpring框架中的一个异常类,它表示在获取Bean实例时,实际获取到的对象类型与所需的类型不匹配。该异常通常在Spring容器初始化过程中抛出,可以帮助开发人员快速定位并修复类型错误的问题。异常处理是软件开发中不可或缺的一部分。它可以帮助我们定位和解决问题,提高程序的稳定性和可靠性。对于Spring框架中的BeanNotOfRequiredTypeException异常,我们需要仔细分析异常的产生原因,并采取相应的解决方法。

博客 1359

springboot Autowired BeanNotOfRequiredTypeException

现象 org.springframework.beans.factory.BeanNotOfRequiredTypeException: Bean named 'xxxxImpl' is expected to be of type 'com.xxx.xxxImpl' but was actually of type 'com.sun.proxy.$Proxy62' 直接Au...

aipiannian6725的博客 132

Spring:BeanNotOfRequiredTypeException

1.异常详情Exception in thread "main" org.springframework.beans.factory.BeanNotOfRequiredTypeException: Bean named 'helloImpl' must be of type [cn.lzf.bean.HelloImpl], but was actually of type [com.sun.prox

ZF小飞的博客 7462

org.springframework.beans.factory.BeanNotOfRequiredTypeException

错误信息: org.springframework.beans.factory.BeanNotOfRequiredTypeException: Bean named 'aisleService' must be of type [com.gdie.whlocation.service.impl.AisleService], but was actually of type [$Proxy...

科技改变生活 4483

解决:org.springframework.beans.factory.BeanNotOfRequiredTypeException

报错信息: org.springframework.beans.factory.BeanNotOfRequiredTypeException: Bean named 'xxx' is expected to be of type 'xxx.xxx.xxx.xxxImpl' but was actually of type 'com.sun.proxy.$Proxy9' at org.springframework.beans.factory.support.AbstractBeanFactory.doGe

胖达不胖的博客 2233

org.springframework.beans.factory.BeanNotOfRequiredTypeException 错误,

问题描述: 今天在使用annotation的方式注入spring的bean 的时候出现了 org.springframework.beans.factory.BeanNotOfRequiredTypeException:错误 后来看了下spring的一些解释,觉得是spring采用的代理机制导致了这个错误。 代码1     @Resource(name="formDefMap

Draco 1万+

解决: org.springframework.beans.factory.BeanNotOfRequiredTypeException

错误信息: org.springframework.beans.factory.BeanNotOfRequiredTypeException: Bean named 'aisleService' must be of type [com.gdie.whlocation.service.impl.AisleService], but was actually of type [$Proxy...

qq_33499943的博客 1983

使用SpringAOP时遇到的BeanNotOfRequiredTypeException异常

BeanNotOfRequiredTypeException异常AOP 在使用aop实现动态代理时,遇到了一个异常,异常如下图: 大概就是我的类明明应该是Programmer,结果显示是$Proxy13,就没生成成功。 发现是在配置文件中,配置aspctj增强时使用了:<aop:aspectj-autoproxy/>,这个代码默认为proxy-target-class=“false”,这代表当前动态代理使用的是JDK动态代理技术织入增强。而我使用的子类实现接口的方式实现动态代理,jdk的明显不

hubertbb3的博客 360

已解决org.springframework.beans.factory.BeanNotOfRequiredTypeException异常的正确解决方法,亲测有效!!!

处理异常的关键在于理解和匹配Bean的声明类型与代码中请求的类型。通过细致地检查Spring配置与代码逻辑,大多数情况下都能找到并解决问题。始终保持清晰的类型使用原则和良好的编码习惯,可以在很大程度上避免这类问题的发生。希望上述解决方案能帮助你成功解决异常,提升你的开发效率。以上是此问题报错原因的解决方法,欢迎评论区留言讨论是否能解决,如果本文对你有帮助 欢迎关注、评论,博主才有动力持续记录遇到的问题!!!博主v:XiaoMing_Java嗨,大家好,我是。

小明的Java问道之路 4405

org.springframework.beans.factory.BeanNotOfRequiredTypeException:

EVERE: Servlet.service() for servlet [action] in context with path [/Hospital] threw exception [org.springframework.beans.factory.BeanNotOfRequiredTypeException: Bean named '/search' must be of type [

rchm8519的专栏 2009

java报错已解决】org.springframework.beans.factory.BeanNotOfRequiredTypeException

Java开发的世界里,报错信息就像是路上的绊脚石,时不时地冒出来阻碍我们前进的步伐。而其中,org.springframework.beans.factory.BeanNotOfRequiredTypeException这个报错更是让不少开发者和环境配置者头疼不已。当遇到这样的报错时,我们该如何拨开迷雾,迅速找到解决之道呢?今天,就让我们一起来深入探讨这个问题,帮助大家在面对此类报错时能够胸有成竹地应对。

鸽芷咕的博客 1310

org.springframework.beans.factory.BeanNotOfRequiredTypeException 问题解决

org.springframework.beans.factory.BeanNotOfRequiredTypeException: Bean named 'aisleService' must be of type..... @Autowired private Target target; // 只能使用 cjlib代理方式,或采用接口类型接收 @Test ...

L909281765L的博客 1944

软件项目外包合同范本(1).doc

软件项目外包合同范本(1).doc

上一篇: Mybatis
下一篇: SpringMVC
Always_moving
博客等级 码龄7年 0粉丝 6原创
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值