关于spring的applicationContext.xml配置文件的ref和value之自我想法

    今天在做SSH的一个项目的时候,因为需要定时操作,所以就再sping里面加入了一个quartz的小定时框架,结果在运行时候,发生了一个小bug.

Caused by: org.springframework.beans.ConversionNotSupportedException: Failed to convert property value of type 'java.lang.String' to required type 'org.quartz.spi.JobFactory' for property 'jobFactory'; nested exception is java.lang.IllegalStateException: Cannot convert value of type [java.lang.String] to required type [org.quartz.spi.JobFactory] for property 'jobFactory': no matching editors or conversion strategy found
Caused by: java.lang.IllegalStateException:  for property 'jobFactory': no matching editors or conversion strategy found

这是一个非常小的bug,没想到我刚开始却没注意到哪错了.

错误代码:

<property name="jobFactory" value="jobFactory"/>

正确代码:

<property name="jobFactory" ref="jobFactory"/>
看出来了么?将string类型转换成所需要的class类型的转换错误

是value和ref写错了.

理论上,ref是用在,当前xml中先前已经配置了<bean>标签的,由于我的ssh框架使用的是注解开发,所以直接使用注解@Service("jobFactory")里面的jobFactory即可.

在spring配置文件里面,value配置的参数,一般是用在数字,字符串之类的,而不能放对象.而ref是存的是对象的引用!

特以此几年今天所犯的错误.与君共勉.

转载于:https://www.cnblogs.com/wangxinblog/p/7309035.html

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值