神通与quartz适配

Spring+Quartz实现动态定制定时任务并适配各种数据库Spring+

(1)解决方式1:

代码当中动态适配所有数据库,根据数据库类型采用相应的代理类,不修改配置文件。 
方案1:最简单直接,如果是自己项目使用,完全ok。但如果是一件产品,大量用户使用的话,体验太差,不能采用。 
方案2:体验好,用户也感觉不到。当时否定的原因在于:自己技术不行,担心用户在初始化之前quartz已经读取了配置文件,这样就会导致用户在第一次启动时候出现问题。最后请教了前辈,我们产品初始化数据库是第一个操作,spring注入在其后,所以,这样做是没有任何问题的。比较好的方案。 
方案3:最麻烦也最困难的方案,需要对spring-quartz的初始化过程比较了解,但因为已经否定了方案2,所以自己就选择了这个,最终也实现了。

其实要是没有sqlserver的问题的话,方案3也挺简单的。 
我去查看了代理类之间的不同,就我使用的五种数据库,他们的区别就只是读取二进制文件的方式不同而已,重写了两个方法而已。解决方案也很简单,自己写一个数据库代理类,在静态区去判断数据库类型。再读取二进制数据时,把quartz本身提供的读取方法搬过来,调用一下对应的即可。

  1. 解决方式2:还有另外一种解决办法就是升级quartz版本  低版本的存在问题 高版本的不存在问题
  • 5
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值