在使用SimpleJdbcDaoSupport作为基类创建Dao时候出现的奇怪的BUG

Spring MVC+SimpleJdbcDaoSupport增删改查小例子 NULL 博文链接:https://qindongliang.iteye.com/blog/1998799 立即下载

今天在练习使用SimpleJdbcDaoSupport时候,出现了一个莫名奇妙的BUG,现记录如下:

XML中配置如下:

<bean id="jdbcTemplate" class="org.springframework.jdbc.core.simple.SimpleJdbcTemplate">
		<constructor-arg ref="dataSource"/>
	</bean>
	
	<!-- <bean id="testDaoImpl" class="com.zdz.dao.TestDaoImpl">
		<property name="jdbcTemplate" ref="jdbcTemplate"></property>
	</bean> -->
	
	<bean id="jdbcTestDaoImpl" class="com.zdz.dao.JdbcTestDaoImpl">
		<property name="jdbcTemplate" ref="jdbcTemplate"></property>
	</bean>

其中JdbcTestDaoImpl类继承了SimpleJdbcDaoSupport:

public class JdbcTestDaoImpl extends SimpleJdbcDaoSupport

但是在使用时出现错误:

org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'jdbcTestDaoImpl' defined in class path resource [beans.xml]: Initialization of bean failed; nested exception is org.springframework.beans.ConversionNotSupportedException: Failed to convert property value of type 'org.springframework.jdbc.core.simple.SimpleJdbcTemplate' to required type 'org.springframework.jdbc.core.JdbcTemplate' for property 'jdbcTemplate'; nested exception is java.lang.IllegalStateException: Cannot convert value of type [org.springframework.jdbc.core.simple.SimpleJdbcTemplate] to required type 

说是从org.springframework.jdbc.core.simple.SimpleJdbcTemplate转换到org.springframework.jdbc.core.JdbcTemplate类的异常,但是查看SimpleJdbcDaoSupport 的源代码可见其属性simpleJdbcTemplate的类正是org.springframework.jdbc.core.simple.SimpleJdbcTemplate,就是上面所说的需要转换之前的类所以并不需要类型转换。于是我在XML中将要注入的Bean  jdbcTemplate的类型改为转换的目标类org.springframework.jdbc.core.JdbcTemplate,顺利通过。

但是问题还是没有解决,为什么要求的类与原类一致却仍然说要进行转换呢?目标类型为什么与类内自己定义的类型不一致呢?


JdbcDaoSupport类的使用 String框架中的JdbcDaoSupport类的使用 立即下载

相关推荐

YOLO26算法心电图十二导联目标检测+训练好的模型+368张数据集+pyqt可视化界面.zip

附训练好的 YOLO 权重与 PyQt 可视化检测界面,页面底部含可视化效果预览,毕设/课设开箱即用。 【数据集概况】 · 检测类别(中文):[导联I(I), 导联II(II), 导联III(III), 胸导联V1(V1), 胸导联V2(V2), 胸导联V3(V3), 胸导联V4(V4), 胸导联V5(V5), 胸导联V6(V6), 加压肢体导联aVF(aVF), 加压肢体导联aVL(aVL), 加压肢体导联aVR(aVR)] · 训练集:313 张 · 验证集:37 张 · 测试集:18 张 · 总计:368 张 该数据集聚焦于临床心电图信号的精准识别与定位,其核心检测目标为标准12导联心电图中的各个独立导联波形区域,涵盖肢体导联(I、II、III)与加压肢体导联(aVR、aVL、aVF),以及胸前导联(V1至V6),适用于心电图自动分析系统中对各导联位置的快速准确标注与分类。数据采集场景真实还原了医院心电图室或急诊监护环境下的标准心电图记录纸,波形清晰、基线稳定,具有高度临床参考价值。... 【训练曲线与评估图】 【模型训练配置】 参数 | 值 模型 | yolo26n 训练轮数 | 100 epochs 输入尺寸 | 640x640 批次大小 | 24 优化器 | auto 初始学习率 | 0.01 训练设备 【关键指标汇总】 训练了 57 个 epoch,最终轮指标: 指标 | 数值 mAP50 | **0.9708** mAP50-95 | 0.6344 Precision | 0.8990 Recall | 0.9191 train/box_loss | 1.2231 train/cls_loss | 0.9703 val/box_loss | 1.2779 val/cls_loss | 0.... 使用场景:毕业设计、课程设计、深度学习入门、工业场景落地验证。

Spring+SimpleJdbcTemplate+SimpleJdbcDaoSupport+SimpleJdbcInsert+SimpleJdbcCall

支持泛型、varargs特性。spring的JDBC集成提供了相应的SimpleJdbcTemplate与SimpleJdbcDaoSupport。 DI容器可以通过构建器将DataSource、JdbcTemplate、NamedParameterJdbcTemplate等对象传给它,从而准备好 SimpleJdbcTemplate实例。 为了使用泛型带来的优势,Spring提供了Para

ilovejava_2010的专栏 2279

Codesys电子凸轮从入门到应用:手把手教你用MC_CamIn/MC_CamOut实现主从轴同步

本文详细介绍了如何在Codesys平台上使用MC_CamIn和MC_CamOut功能块实现电子凸轮的主从轴同步控制。从环境配置、轴使能到凸轮表创建与动态切换,提供了完整的程序编写指南和调试技巧,帮助工程师快速掌握工业自动化中的高精度运动控制技术。

weixin_26878995的博客 276

好用的SimpleJdbcDaoSupport

我们在使用Spring的JdbcTemplate 写DAO时,通常可以继承JdbcDaoSupport或直接通过setter方法注入JdbcTemplate。此外spring中还提供了JdbcTemplate 的简化版SimpleJdbcTemplate以及对应的SimpleJdbcDaoSupport。 SimpleJdbcTemplate提供了对范型的支持,在查询操作时能以更...

leer的学习笔记本 363

Qt开发中彻底解决中文乱码问题

中文乱码问题主要源于编码不一致需要同时设置控制台和Qt应用程序的编码确保项目文件和环境配置的编码一致文件操作时注意指定正确的编码。

qq_53832058的博客 3404

海康工业相机 Could not find module MvCameraControl.dll(已解决)

【代码】海康摄像机 Could not find module MvCameraControl.dll(已解决)

hmbbpdx的博客 2221

Spring中基于JdbcDaoSupport使用SimpleJdbcDaoSupport

学习在Spring中使用数据库的时候发现Spring对JDBC的Dao有个支持类JdbcDaoSupport,通过继承这个类可以减少JdbcTemplate的代码量,于是就照着《Spring In Action 2》中的没想到出现了下列异常 [code="java"]Failed to convert property value of type org.springframework.jdbc...

grow up 394

光模块组成

时钟恢复电路(Clock Data Recovery,简称CDR)是光模块中的关键组成部分,CDR的作用主要是从接收到的信号中提取出数据序列,并且恢复出与数据序列相对应的时钟时序信号,从而还原接收到的具体信息。因为光信号传输至一定距离的时候,通常是长距离传输,其波形会出现一定程度的失真,接收端接收到的信号是一个个长短不一的脉冲信号,这个时候在接收端,我们就无法得到我们需要的数据。所以,这个时候就需要有信号的再生,信号的再生功能为再放大、再整形和再定时,其中的再定时指的就是CDR时钟数据恢复。

han_better的博客 5721

SimpleJdbcDaoSupport 已经在Spring 3.1中被deprecated掉了。

好用的SimpleJdbcDaoSupport 及 SimpleJdbcTemplate,已经在3.1中被废弃 原因是JdbcDaoSupport 或NamedParameterJdbcDaoSupport已经提供了其所有功能 请看源代码: /** * Extension of {@link org.springframework.jdbc.core.support.JdbcDao

KimSoft's Blog 1万+

基于YOLOv5的人脸识别系统:从构建到应用的全流程指南

本文详细介绍了基于YOLOv5的人脸识别系统开发全流程。首先阐述了YOLOv5模型的高效性和准确性优势,随后分步骤讲解了深度学习环境配置、数据集准备(推荐WIDER FACE数据集)和模型训练方法。重点展示了如何将训练好的模型集成到Tkinter开发的GUI界面中,实现图片上传、人脸检测和结果可视化功能。文章提供完整的代码示例和飞书文档链接(密码:946m22&8),帮助开发者快速构建可交互的人脸识别系统,适用于安防、门禁等多种应用场景。通过该项目,读者可掌握YOLOv5的实际应用和界面集成技术。

FJN110的博客 168

TMC2240 芯片数据手册解读|第三篇 TMC2240 芯片引脚配置与说明

本文详细解析了TMC2240芯片的两款封装(TQFN32和TSSOP38-EP)的引脚分布、电气属性及硬件设计要点。内容涵盖:1)芯片内部功能架构,包括供电、运动控制等五大链路;2)两款封装的核心规范与适用场景;3)七大引脚分类详解(电源、控制、编码器等)及接线要求;4)PCB设计避坑指南,强调电源分割、电荷泵布局等关键点。文章提供完整的原理图绘制和硬件调试指导,适合不同基础的工程师参考实践。

BackCatK Chen的博客 1090

SimpleJdbcDaoSupport 已经在Spring 3.1中被deprecated掉了,在4.2中已经找不到了

好用的SimpleJdbcDaoSupport 及 SimpleJdbcTemplate,已经在3.1中被废弃 原因是JdbcDaoSupport 或NamedParameterJdbcDaoSupport已经提供了其所有功能   请看源代码: [java] view plaincopy /**   * Extension of {@link org.spring...

lgshendy的专栏 506

代数拓扑与AI架构:AI应用架构师深入探索数学研究如何分析复杂系统的结构特性

随着人工智能技术的飞速发展,AI系统变得越来越复杂。AI应用架构师需要有效的工具和方法来理解、设计和优化这些复杂系统。代数拓扑作为数学的一个分支,提供了独特的视角和技术来分析复杂系统的结构特性。本文旨在帮助AI应用架构师深入了解代数拓扑,以及如何将其应用于AI架构设计中,提升对复杂系统的分析能力。首先,我们会介绍代数拓扑和AI架构相关的核心概念及其联系,通过有趣的故事引入主题,让读者轻松理解复杂概念。接着,深入探讨代数拓扑的核心算法原理,结合具体的编程语言代码示例详细阐述。

大模型应用工坊 669

Spring中JdbcTemplate和JdbcDaoSupport简单使用

【1】JdbcTemplate JdbcTempl简介为了使 JDBC 更加易于使用, Spring 在 JDBC API 上定义了一个抽象层, 以此建立一个 JDBC 存取框架.作为 Spring JDBC 框架的核心, JDBC 模板的设计目的是为不同类型的 JDBC 操作提供模板方法. 每个模板方法都能控制整个过程, 并允许覆盖过程中的特定任务. 通过这种方式, 可以在尽可能保留灵活性的情况下, 将数据库存取的

小小默:进无止境 3018

《QT+PCL》点云的点选与框选

【代码】《QT+PCL》点云的点选与框选。

阁楼 3600

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

(三十二)JdbcDaoSupport支持类

        虽然可以直接利用JDBCTemplate进行数据库的操作,但是在大部分的DAO实现子类中,很少有人这样去做,往往会让DAO实现子类既实现了DAO结构同时去继承一个JdbcDaoSupport的抽象类,        因为如果不继承,你的代码就需要编写一个这样的功能:@Autowired //自动根据匹配类型注入所需要的数据 public NewsDAOImpl(JdbcTemp...

007的博客 2026

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

继承“JdbcDaoSupport”之后,报了“The type org.springframework.dao.support.DaoSupport .class files”错误之后的一些解决方案

今天写了个简单的程序,继承JdbcDaoSupport报这个错误 一是因为少了spring-beans-4.0.6.RELEASE.jar  或者spring-tx-4.0.6.RELEASE.jar   这两个包; 查看了这两篇博文,找到的原因 http://rainbow702.iteye.com/blog/2246435 http://blog.sina.com.cn/s/blo

qq_39533140的博客 540

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

关于DAO实现类继承JdbcDaoSupport类后,使用注解无法注入DataSource的问题

解决办法: 方法1:最简洁,用重写类构造函数的办法自动装配daoSupport需要用到的数据源. @Autowired UserDaoImpl(DataSource dataSource){ setDataSource(dataSource); }   方法2:使用前置通知,初始化的时候自动装配数据源. @AutoWired Private DataSource data

hanyu_aa的博客 3626

编程式事务管理、声明式事务管理中HibernateDaoSupport与JdbcDaoSupport的应用

编程式事务管理、声明式事务管理中HibernateDaoSupport与JdbcDaoSupport的应用: 1、编程式事务管理: 1>、JdbcDaoSupport编程式事物管理,必须继承JdbcDaoSupport类,得到JdbcTemplate从而实现事务管理;  TestA.java:public class TestA extends JdbcDaoSupport{ public voi

linwei_1029的专栏 4934

jdbc事物提交,回滚不起作用的解决方案

今天在写程序的时候发现一个奇怪的问题: 明明设置了事物非自动提交,但是当 回滚后,更新操作还是被执行了,并且不报任何错误. 下面是代码,代码是没有问题的: import java.sql.Connection; import java.sql.DriverManager; import java.sql.PreparedStatement; import java.sql.Stat

添柴程序猿的专栏 7270

Spring JDBC的最佳实践

其一:需要注意合理设置Statement的fetchSize大小,即JdbcTemplate暴露的fetchSize变量的取值。 大量实践证明,通常情况下,将fetchSize设置为30-50最为合理,但也存在特殊情况。fetchSize取值太大,JVM消耗的临时内存会很多。 其二:存储或更新大批量的数据时,开发者需要控制好每批数据的数据量。比如BatchSqlUpdate内置了一batchS

ilovejava_2010的专栏 1143

Spring中,在继承JdbcDaoSupport时,出现The type org.springframework.dao.support.DaoSupport cannot be resolved.

在使用spring框架时 ,继承JdbcDaoSupport时,出现: The type org.springframework.dao.support.DaoSupport cannot be resolved. It is indirectly referenced from required .class files的提示错误, 最后导入Spring-tx.jar正常

u013449674的博客 2055

继承jdbcDaoSupport的jdbc查询速度问题,高手帮助

数据库:oracle9i 应用服务器:tomcat6查询调用 jdbcTemplate().queryForList( StringBuffer sb = new StringBuffer();   sb.append(" SELECT PLU_CODE,PLU_VALUE,MEASURE_TIME,EQP_ID FROM E_DATA_VALUE ");   sb.append(" WHER...

wubg 324
上一篇: 使用Spring容器取出Bean时的奇怪的ClassCastException
zdz_code
博客等级 码龄11年 0粉丝 3原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值