org.springframework.beans.factory.UnsatisfiedDependencyException:

news2024/11/27 15:37:15

今天碰到了一个数据库表中有2个主键,结果利用mp生成的po类,出现了一系列问题,报了这个错误,一看是这个实体类自带了2个filedId注解,运行springboot能不报错吗?报错信息挺有意思的,所以写了这篇博客,分享一下。

(1)报错内容

org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'articleWeb': Unsatisfied dependency expressed through field 'articleService'; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'articleServiceImpl': Unsatisfied dependency expressed through field 'baseMapper'; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'articleMapper' defined in file [/Users/lijiannan/Documents/javaCode/boke/common/target/classes/com/buka/mapper/ArticleMapper.class]: Unsatisfied dependency expressed through bean property 'sqlSessionFactory'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'sqlSessionFactory' defined in class path resource [com/baomidou/mybatisplus/autoconfigure/MybatisPlusAutoConfiguration.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.apache.ibatis.session.SqlSessionFactory]: Factory method 'sqlSessionFactory' threw exception; nested exception is org.springframework.core.NestedIOException: Failed to parse mapping resource: 'file [/Users/lijiannan/Documents/javaCode/boke/common/target/classes/mapper/ArticleTagMapper.xml]'; nested exception is com.baomidou.mybatisplus.core.exceptions.MybatisPlusException: @TableId can't more than one in Class: "com.buka.po.ArticleTag".
    at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.resolveFieldValue(AutowiredAnnotationBeanPostProcessor.java:660) ~[spring-beans-5.3.7.jar:5.3.7]
    at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:640) ~[spring-beans-5.3.7.jar:5.3.7]
    at org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:119) ~[spring-beans-5.3.7.jar:5.3.7]
    at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessProperties(AutowiredAnnotationBeanPostProcessor.java:399) ~[spring-beans-5.3.7.jar:5.3.7]
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1413) ~[spring-beans-5.3.7.jar:5.3.7]
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:601) ~[spring-beans-5.3.7.jar:5.3.7]
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:524) ~[spring-beans-5.3.7.jar:5.3.7]
    at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335) ~[spring-beans-5.3.7.jar:5.3.7]
    at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) ~[spring-beans-5.3.7.jar:5.3.7]
    at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333) ~[spring-beans-5.3.7.jar:5.3.7]
    at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208) ~[spring-beans-5.3.7.jar:5.3.7]
    at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:944) ~[spring-beans-5.3.7.jar:5.3.7]
    at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:918) ~[spring-context-5.3.7.jar:5.3.7]
    at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:583) ~[spring-context-5.3.7.jar:5.3.7]
    at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:145) ~[spring-boot-2.5.0.jar:2.5.0]
    at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:758) [spring-boot-2.5.0.jar:2.5.0]
    at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:438) [spring-boot-2.5.0.jar:2.5.0]
    at org.springframework.boot.SpringApplication.run(SpringApplication.java:337) [spring-boot-2.5.0.jar:2.5.0]
    at org.springframework.boot.SpringApplication.run(SpringApplication.java:1336) [spring-boot-2.5.0.jar:2.5.0]
    at org.springframework.boot.SpringApplication.run(SpringApplication.java:1325) [spring-boot-2.5.0.jar:2.5.0]


(2)分析报错内容

根据提供的错误日志,出现了依赖注入的问题。具体错误信息为:Unsatisfied dependency expressed through field 'articleService'Unsatisfied dependency expressed through field 'baseMapper'

第一个错误表明在'ArticleWeb'类中的字段'articleService'无法满足依赖关系。第二个错误表明在'articleServiceImpl'类中的字段'baseMapper'无法满足依赖关系。

可能的原因是相关的bean无法正确创建或注入,导致依赖关系无法满足。

您可以尝试以下解决方法:

  1. 检查相关的bean定义和配置,确保它们正确无误。
  2. 确保所需的依赖项已正确注入,并且其类型和名称与目标字段的声明相匹配。
  3. 检查可能存在的循环依赖,如果有,请重新设计您的代码以消除循环依赖。
  4. 检查是否存在版本不兼容或冲突的依赖项。

另外,错误日志还提到了关于'MybatisPlus'的异常。您还需要检查'MybatisPlus'相关的配置和映射文件是否正确,并且是否存在语法错误或不一致。

(3)附图

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/847429.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

服务器时钟同步

服务器时钟同步 文章目录 服务器时钟同步背景windows时钟同步Linux机器上的时钟同步Centos时钟同步Ubuntu系统时钟同步 查看是否同步的命令 背景 运维,XXX服务器慢了2秒,导致XXX业务没有正常执行,请立即排查为啥会有时钟不同步的问题。 首先…

无涯教程-Perl - continue 语句函数

可以在 while 和 foreach 循环中使用continue语句。 continue - 语法 带有 while 循环的 continue 语句的语法如下- while(condition) {statement(s); } continue {statement(s); } 具有 foreach 循环的 continue 语句的语法如下- foreach $a (listA) {statement(s); } co…

React Native从文本内容尾部截取显示省略号

<Textstyle{styles.mMeNickname}ellipsizeMode"tail"numberOfLines{1}>{userInfo.nickname}</Text> 参考链接&#xff1a; https://www.reactnative.cn/docs/text#ellipsizemode https://chat.xutongbao.top/

C++学习——认识什么是STL以及string类的使用

目录 一&#xff1a;认识STL 1.什么是STL 2.STL当中的各种功能 3.STL的重要性 二&#xff1a;认识string类 1.什么是string 2.string类相关的使用方法 Tips1 &#xff1a;constructor Tips2&#xff1a;destructor Tips3&#xff1a;iterator Tips4&#xff1a;capacity ​编辑…

数学建模学习(9):模拟退火算法

模拟退火算法(Simulated Annealing, SA)的思想借 鉴于固体的退火原理&#xff0c;当固体的温度很高的时候&#xff0c;内能比 较大&#xff0c;固体的内部粒子处于快速无序运动&#xff0c;当温度慢慢降 低的过程中&#xff0c;固体的内能减小&#xff0c;粒子的慢慢趋于有序&a…

SQL 相关子查询 和 不相关子查询、Exists 、Not Exists

不相关子查询 子查询的查询条件不依赖于父查询&#xff0c;称不相关子查询。子查询可以单独运行的 select stu_id,sex,age from student t where sex(select sexfrom studentwhere stu_id10023 )相关子查询 关联子查询 子查询的查询条件依赖于父查询&#xff0c;称为 相关子…

【Hystrix技术指南】(6)请求合并机制原理分析

[每日一句] 也许你度过了很糟糕的一天&#xff0c;但这并不代表你会因此度过糟糕的一生。 [背景介绍] 分布式系统的规模和复杂度不断增加&#xff0c;随着而来的是对分布式系统可用性的要求越来越高。在各种高可用设计模式中&#xff0c;【熔断、隔离、降级、限流】是经常被使…

跨境商城系统源码的优势,助力企业海外扩张

跨境电商发展背景与趋势 随着全球化的推进和互联网技术的快速发展&#xff0c;跨境电商已成为企业海外拓展的重要途径。然而&#xff0c;跨境电商面临着诸多挑战&#xff0c;如复杂的海外市场、文化差异、海关监管等。为了解决这些问题&#xff0c;企业可以借助跨境商城系统源码…

连接SAP rfc一直报错如何解决?

问题如下&#xff1a; 代码&#xff1a; static String ABAP_AS_POOLED "ABAP_AS_WITH_POOL";private static Logger log;static {Properties connectProperties new Properties();connectProperties.setProperty(DestinationDataProvider.JCO_ASHOST, "IP&q…

vue table动态合并, 自定义合并,参照合并,组合合并

<template><div><el-table:data"tableData":span-method"objectSpanMethod"border:header-cell-style"{ textAlign: center }"><el-table-column prop"area" label"区域" align"center">…

分班问题难?分班查询系统为你解决分班难题

老师们在教学工作中&#xff0c;特别是每个新学年开始&#xff0c;都会面临一个重要的任务——分班。除了分班名单的确定&#xff0c;分班查询也同样困扰老师们&#xff01;在分班过程中面临的难题&#xff0c;最关键的一点是在完成分班名单确定后&#xff0c;分班查询的通知显…

Win7之MS12-020死亡蓝屏

一&#xff0c;何为死亡蓝屏 1&#xff0c;简介 死亡蓝屏利用RDP协议&#xff0c;基于3389远程桌面端口对目标主机进行攻击&#xff0c;使目标机系统瘫痪导致蓝屏&#xff0c;严重影响着计算机的正常使用。 2&#xff0c;条件 1>目标操作系统未开启防火墙和杀毒软件等 2&g…

STM32 LoRa源码解读

目录结构&#xff1a; SX1278 |-- include | |-- fifo.h | |-- lora.h | |-- platform.h | |-- radio.h | |-- spi.h | |-- sx1276.h | |-- sx1276Fsk.h | |-- sx1276FskMisc.h | |-- sx1276Hal.h | |-- sx1276LoRa.h | -- sx1276LoRaMisc.h – src |-- fifo.c |-- lora.c |-- …

Neo4j笔记-数据迁移(导出/导入)

这里先说明以下几点&#xff1a; Neo4j在4.0下版本默认的库名是&#xff1a;graph.db Neo4j在4.0上版本默认的库名是&#xff1a;neo4j.db 不管是Neo4j&#xff0c;还是Neo4j Desktop&#xff0c;都会在bin目录下有neo4j、neo4j-admin软件。在conf目录下&#xff0c;有neo4j.…

mfc140u.dll文件下载安装的方法,修复缺失的mfc140u.dll

关于mfc140u.dll缺失的情况&#xff0c;其实可以说是非常的常见&#xff0c;这个错误可能会导致某些程序无法正常的工作或者是启动&#xff0c;所以我就要想办法去解决它&#xff0c;而解决它的方法就是下载一个新的mfc140u.dll文件&#xff0c;今天我们就来聊聊mfc140u.dll文件…

Java中有哪些可以用于日期和时间的API?

从Java 8开始&#xff0c;java.time包提供了新的日期和时间API&#xff0c;新增的API严格区分了时刻、本地日期、本地时间&#xff0c;并且&#xff0c;对日期和时间进行运算更加方便。主要涉及的类型有以下几类&#xff1a; LocalDate&#xff1a;不包含具体时间的日期。 Lo…

gRPC中interceptor拦截器的总结和实践

一、使用场景 gRPC中的interceptor拦截器分为客户端拦截器和服务端拦截器&#xff0c;分别是在客户端和服务端的请求被发送出去之前进行处理的逻辑。常见的使用场景有&#xff1a;&#xff08;1&#xff09;请求日志记录及监控&#xff1b;&#xff08;2&#xff09;添加请求头…

C++初阶语法——引用,从此和指针说byebye

前言&#xff1a;相信学过C语言的同学肯定被指针深深折磨过&#xff0c;从一级指针到二级指针&#xff0c;数组指针&#xff0c;函数指针等等&#xff0c;可谓是谈针色变。而在C中&#xff0c;使用引用代替了指针的使用&#xff0c;大大降低了我们学习的难度。 引用 一.什么是…

阿里云二级域名配置

阿里云二级域名配置 首先需要进入阿里云控制台的域名管理 1.选择域名点击解析 2.添加记录 3.选择A类型 4.主机记录设置【可以aa.bb或者aa.bb.cc】 到时候会变成&#xff1a;aa.bb.***.com 5.解析请求来源设置为默认 6.记录值 设置为要解析的服务器的ip地址 7.TTL 默认即…

知网行政部门主管_《天津教育》投稿指南

知网行政部门主管_《天津教育》投稿指南 一、《天津教育》期刊简介&#xff1a; 主管单位&#xff1a;天津市教育委员会 主办单位&#xff1a;天津教育报刊社 国际标准刊号ISSN:0493-2099 国内统一刊号CN:12-1044/G4 邮发代号6-9 出版周期&#xff1a;旬刊 出版地&…