Error creating bean with name ‘sqlSessionFactory‘ defined in class path reso「建议收藏」

Error creating bean with name ‘sqlSessionFactory‘ defined in class path reso「建议收藏」文章目录问题原因解决问题网上找的方案问题原因今天学习spring时,出现这个问题,网上查了很多,大家错误各自不同,我一个一个改了之后还是报这个错误,总结了一下大家的改错方案,我发现百分之八十都是spring配置文件有错误。于是根据总结的东西和大家改错的方案,阅读错误信息可知,是sqlSessionFactory创建时出现了问题。这时候请大家看spring-dao.xml(每个人给配置文件的命名有所不同,不一定是这个名,反正就是spring的xml配置文件)后面的报错信息,根据报错信息找到你自己的

大家好,又见面了,我是你们的朋友全栈君。

问题原因

今天学习spring时,出现这个问题,网上查了很多,大家错误各自不同,我一个一个改了之后还是报这个错误,总结了一下大家的改错方案,我发现百分之八十都是spring配置文件有错误。
于是根据总结的东西和大家改错的方案,阅读错误信息可知,是sqlSessionFactory创建时出现了问题。
这时候请大家看 spring-dao.xml (每个人给配置文件的命名有所不同,不一定是这个名,反正就是spring的xml配置文件)后面的报错信息,根据报错信息找到你自己的问题
在这里插入图片描述
我的报错信息是:

 Error creating bean with name 'sqlSessionFactory' defined in class path resource [spring-dao.xml]: Initialization of bean failed; nested exception is org.springframework.beans.ConversionNotSupportedException: Failed to convert property value of type 'java.lang.String' to required type 'javax.sql.DataSource' for property 'dataSource'; nested exception is java.lang.IllegalStateException: Cannot convert value of type 'java.lang.String' to required type 'javax.sql.DataSource' for property 'dataSource': no matching editors or conversion strategy found

解决问题

阅读可知,配置数据源时出现了问题,经过排查发现,创建SqlSessionFactory这里的ref我写成了value,改正后就不报错了
在这里插入图片描述
下面说说我今天看到的一些其他朋友报这个错误然后他们错误的地方和我不一样的解决方案

网上找的方案

  1. 报错原因是因为我在mybatis里面这段代码没有删除导致spring和mybatis都扫描了一遍xml,就出错了。
<mappers>
        <mapper resource="cn/dao/WorkinggMapper.xml"/>
</mappers>

这两段代码只要删一段就行,删spring里面的或者mybatis的都行

    <!-- 配置SQL映射文件信息 -->
        <property name="mapperLocations">
            <list>
                <value>classpath:cn/dao/**/*.xml</value>
            </list>
        </property>

此方案参考文章:https://www.cnblogs.com/hfx123/p/9685721.html

  1. 配置文件开头加上这剧
default-autowire="byname"

在这里插入图片描述
此方案参考文章:https://blog.csdn.net/weixin_43749065/article/details/84664474

  1. 在这里插入图片描述
    项目的springBoot是使用class配置的链接数据库dao接口和配置 上图是简单springBoot 启动报的错误信息 经过一步步debug 发现是在druidDataSource 数据库配置的setDriverClassName 和setUrl 两个属性为空 修改即可
    此方案参考文章:https://www.cnblogs.com/haojiedege/p/6774037.html

总之,就是写配置文件的时候一定要细心细心加细心!
总之,就是写配置文件的时候一定要细心细心加细心!
总之,就是写配置文件的时候一定要细心细心加细心!
总要的事情说三遍!!!

目前收集了这么多,如果这篇文章能帮到你希望能留言让我知道我帮助了你~

再更新一个

重复扫描了mapper,原理和网上找的方案差不多,都是两个配置文件里都扫描了mapper.class

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/130088.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 【oracle 性能优化】组合索引之index_ss

    【oracle 性能优化】组合索引之index_ss

    2021年9月14日
    55
  • 164. 可达性统计(拓扑排序+数位dp)[通俗易懂]

    164. 可达性统计(拓扑排序+数位dp)[通俗易懂]给定一张 N 个点 M 条边的有向无环图,分别统计从每个点出发能够到达的点的数量。输入格式第一行两个整数 N,M,接下来 M 行每行两个整数 x,y,表示从 x 到 y 的一条有向边。输出格式输出共 N 行,表示每个点能够到达的点的数量。数据范围1≤N,M≤30000输入样例:10 103 82 32 55 95 92 33 94 82 104 9输出样例:1633211111#include<bits/stdc++.h>using

    2022年8月10日
    5
  • 正则表达式替换部分内容

    正则表达式替换部分内容总结一个正则表达式替换匹配项部分内容的语法(.)小括号中的内容是可以用$num进行引用比如123ready,用[0-9]{3}(.)匹配,然后$1可以引用(.*)中的内容,此处(.)代表其他符号如图可以匹配3个数字接其他字符的模式替换结果后续需要将正则语法做一个简要汇总方便温习(…

    2022年5月16日
    45
  • Linux的vi命令用法大全_vim命令和vi的区别

    Linux的vi命令用法大全_vim命令和vi的区别linux下使用vi编辑是很方便的,但是具体要怎么做呢?下面由学习啦小编为大家整理了linux下vi的相关命令,希望对大家有帮助!1.linuxvi命令的基本观点基本上vi能够分为三种形态,区分是命令方式(commandmode)、插入方式(Insertmode)和底行方式(lastlinemode),各方式的功用区分如下:1)命令行方式commandmode)控制屏幕光标的移动,字…

    2022年9月22日
    2
  • SQL嵌套查询_sql差集嵌套

    SQL嵌套查询_sql差集嵌套selecttop11from…主要是用来判断表是否有记录TRUNCATE:删除内容、释放空间但不删除定义,保留数据表的结构删除目标表中所有字段,不影响表结构派生表:派生表就是一个由查询结果生成的临时表。他是在外部查询的FROM中定义的。派生表的存在范围只是在外部查询中,只要外部查询结束了,派生表也就不存在了。派生表一定要写在FROM后面范围内,用()括起来。后面跟着派生表的名称。se…

    2022年8月10日
    6
  • clion 2021.4.2激活码破解方法

    clion 2021.4.2激活码破解方法,https://javaforall.net/100143.html。详细ieda激活码不妨到全栈程序员必看教程网一起来了解一下吧!

    2022年3月14日
    79

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号