Spring框架遇到的各种错误总结 -I

  1. 配置文件找不到报错
    nested exception is java.io.FileNotFoundException

    问题背景:
    使用Spring框架 FileSystemXmlApplicationContext实现类的时候 一直报文件找不到的错误

ApplicationContext xmlApplicationContext = new FileSystemXmlApplicationContext
这个问题很奇怪 发现是一个链式错误

首先在右侧 Maven中 clean ---> complie 之后先报了如下的错误1

问题产生
错误1解决方法:

在pom.xml文件中 加上 本电脑中JDK匹配的编码属性properties 我的电脑使用的JDK版本是11
    <!--指定编码及版本-->
    <properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <maven.compiler.encoding>UTF-8</maven.compiler.encoding>
        <java.version>11</java.version>
        <maven.compiler.source>11</maven.compiler.source>
        <maven.compiler.target>11</maven.compiler.target>

    </properties>
  1. 继续运行测试文件的时候 发现继续报错:

nested exception is java.io.FileNotFoundException

按道理说, FileSystemXmlApplicationContext 后面的路径应该是对应.xml文件的 绝对路径

但是我写了绝对路径 依旧报错!! 在本地文件夹中根据绝对路径找可以到该文件 ,所以不是文件不存在的问题

后来阅读文章 文章链接
之后 发现问题在于: 不要全部复制绝对路径,而是只复制src/…xml这个路径

报错解决

ApplicationContext xmlApplicationContext = new FileSystemXmlApplicationContext("src/main/resources/applicationContext.xml");
  1. 注解实现的时候出现org.springframework.beans.factory.NoSuchBeanDefinitionException: No bean named 'accountService' available
    找不到bean问题

首先 请阅读这篇文章检查一下是否可以解决你的问题

https://blog.csdn.net/maoyuanming0806/article/details/78420239

然后说一下我的问题:在applicationContext.xml文件中 配置 注解扫描包的时候 最开始写的是所有文件夹的根目录名称 不能写图中的"java"包!
所以才会报错!
在这里插入图片描述
如果包含注释的代码只存在于一个包 且 后续测试或应用的代码也只与这个包相关!
请在<context:component-scan base-package="xxx"/> “xxx” 写上当前注释所在包的名称!

更直白解释一下:当前需要在"AccountServiceImpl" 这个文件中进行注解操作,然后把管理这个业务的包名 —> “service” 写到注解扫描中 就不会报错了
在这里插入图片描述
如果包含注释的代码存在于多个包 请把这些包的最上层新建一个新的包名,并在<context:component-scan base-package="xxx"/>中写新建的顶层包名

在这里插入图片描述

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值