首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

我可以在Quartz任务中创建Spring上下文吗?或者这是一个糟糕的想法?

在Quartz任务中创建Spring上下文是可能的,但这通常被认为是一个糟糕的想法。Quartz是一个用于调度任务的开源框架,而Spring是一个用于构建企业级应用程序的框架。两者的设计目标和使用方式有所不同。

在Quartz任务中创建Spring上下文可能会导致以下问题:

  1. 性能问题:每次任务执行时都会创建一个新的Spring上下文,这会消耗大量的资源和时间。如果任务频繁执行,系统的性能可能会受到影响。
  2. 内存泄漏:由于每个任务都会创建一个新的Spring上下文,如果没有正确地销毁上下文,可能会导致内存泄漏问题。
  3. 依赖注入问题:Quartz任务中的Spring上下文可能无法正确地注入依赖项,因为任务的执行环境与应用程序的其他部分可能存在差异。

相反,更好的做法是将Quartz任务与现有的Spring应用程序集成。这样可以确保任务在已经初始化的Spring上下文中运行,可以共享应用程序的资源和依赖项。可以通过配置Quartz的JobFactory来实现这一点,以便在任务执行时使用已经存在的Spring上下文。

总结起来,虽然在Quartz任务中创建Spring上下文是可能的,但这通常被认为是一个糟糕的想法,因为它可能导致性能问题、内存泄漏和依赖注入问题。更好的做法是将Quartz任务与现有的Spring应用程序集成,以确保任务在已经初始化的Spring上下文中运行。

相关搜索:使用一个主类可以在我的组件中包含我需要的所有类。这是不是很糟糕?Power BI -我可以在导入期间在Power BI桌面上运行多个查询吗?这是一个糟糕的设计吗?在Google Play控制台中,我可以更新内部版本吗?或者我必须完全创建一个新的?我可以在svg中创建一个沿着现有行的圆吗?我可以在.NET中创建一个常规的Windows DLL(用于插件)吗?我可以在另一个注解中使用属性中的Spring @Value变量吗?我可以在eclipse中创建一个C“源文件”的快捷方式吗?我可以在相同的CDK部署代码中为Loki和Grafana创建2个或更多ECS任务吗?我可以在Spring JPA @Query中查询一个列表与另一个列表的任何匹配吗?在Mongoose中,我可以创建一个虚拟的来填充然后过滤填充的文档吗?我可以在一个更大的SQL查询中只连接一列,或者将多行转置为额外的列吗?我可以在Kotlin中创建一个完全空的LongArray,而不是用0(零)填充吗?我可以用make或new在golang中创建一个预先填充的字符串吗?我可以在Rust中创建一个包含字符串和该字符串片段的结构吗?我可以创建一个从列中的整数值到它们在sql中表示的文本值的映射吗?我可以在Salesforce平台事件中创建一个数据类型为sobject的自定义字段吗?我可以在kibana中创建一个插件,在kibana仪表板内的小工具菜单中给出"Download as csv option“吗?我可以在vue js中创建一个带有循环的组件吗?有没有办法让它被识别为html标签?我可以在一个VC++ 6.0编译的应用程序中嵌入Strawberry Perl,或者在编译器不匹配的情况下使用Inline :: C吗?在Python中,我可以在不丢失或覆盖旧对象中先前存在的属性的情况下,从另一个对象创建或继承一个对象吗?
相关搜索:
页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

领券