spring 启动 quartz 服务时找不到 bean

最近项目用的定时器,跟以前的不一样,这个不是单实例的定时器,可以通过控制层来控制定时器

还是上问题吧,
1.启动quartz 服务时,报找不到 BizSchemeProfitDao 的 bean ,
在这里插入图片描述

寻找问题的原因

1.第一眼看到控住it输出的bug信息,肯定会想到,有没有这个类,或者类里面的信息是否和正常,配置注解等…
,检查后发现 类信息正常, 那我们可以把问题定位在 quartz 模块
2.检查 quartz 的相关的配置信息,
在这里插入图片描述
引用这个类的空间命名也是没有问题的,那么问题已经渐渐透明化了,我把引用这个类的空间命名去掉,服务就正常启动了 图如下

在这里插入图片描述

问题出来了:
我没在quartz 的.xml配置文件中加入 这个类的空间命名,但是在启动服务中的引入包中加入了地址

解决方案:
1.如果不需要这个bean,就去掉这个类相关的引用
2.如果需要这个bean,就在配置文件中加入bean 引用配置 和相关信息

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在使用Spring Quartz实现定任务,如果需要修改定间而不重启服务,可以考虑以下几种方式: 1. 使用Quartz的动态定任务更新功能: Quartz提供了动态修改定任务的功能,可以通过更新Cron表达式来实现修改定间。首先,在配置文件中设置定任务的Cron表达式为一个变量,然后在代码中通过调用Quartz的API读取配置文件的变量,并更新定任务的Cron表达式。通过这种方式,不需要重启服务即可修改定间。 2. 使用数据库表保存定任务配置参数: 可以将定任务的配置参数,如定间、执行类等保存在数据库表中。然后在代码中通过查询数据库表的方式动态获取定任务的配置参数。当需要修改定,只需更新数据库表中的相应字段,代码会动态读取到新的定间并生效,而不需要重启服务。 3. 使用Spring的动态Bean注册功能: 在项目启动,通过编程的方式动态注册定任务的Bean。将定任务的配置属性作为参数传入Bean,当需要修改定,通过修改Bean的相关属性值来实现。Spring会自动重新加载Bean的定义,并根据新的配置参数重新创建定任务对象,从而实现修改定间而不重启服务。 综上所述,使用Quartz的动态定任务更新功能、数据库表保存定任务配置参数或者Spring的动态Bean注册功能,都可以实现在不重启服务的情况下修改定间。根据实际项目需求和技术架构选择合适的方式即可。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值