当前位置: 首页 > 面试题库 >

EJB 3.x中@Schedule方法的动态参数

商冠玉
2023-03-14
问题内容

我是J2EE6中@Schedule注释的新手

我想使用EJB 3.x和Glassfish 3.1来运行作业。

javax.ejb.Schedule对我们来说似乎是一个不错的选择,因此我们可以将自定义时间视为:

@Singleton
public class CustomTimer {
    @EJB
    SettingsFacade settingsFacade;

    @Schedule(second="someSecondParameter", minute="someMinuteParameter",hour="someHourParameter", persistent=false)
    public void executeTimer(){
        //Code executing something against database using the settingsFacade
    }
}

在这里,我们希望从数据库中获取参数,因此每个月都会对其进行更改。有什么干净的解决方案吗?


问题答案:

不可以,没有解决方案@Schedule,因为注释属性通常应该是编译时间常数。

当需要更大的灵活性时,可以使用编程计时器。此外,还必须轮询数据库以更改配置,并删除现有计时器和创建新计时器。



 类似资料:
  • 我有一个函数将输入作为Mono返回: 我想用初始值3调用发射器一次,然后重复调用,直到达到一定的大小。这个重复逻辑应该在main方法中,所以我不能修改发射器()。 一个简单的解决方案是: 基本上,我正在尝试根据前一个单声道的结果创建另一个具有动态参数的单声道。我知道Mono/Flux是不变的。。。有没有一种简洁、反应迅速的方法?我试过像Flux这样的东西。范围(0,整数。MAX\u值)。zipWi

  • 我对EJB有点陌生。我已经理解了HTTPSession是如何维护的(所有cookie funda)。互联网上所有的资源都写着“有状态会话Bean维护会话(记住客户机)”,但我找不到答案

  • 本文向大家介绍php动态添加url查询参数的方法,包括了php动态添加url查询参数的方法的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了php动态添加url查询参数的方法。分享给大家供大家参考。具体分析如下: 这段代码可以动态为url添加key-value查询参数,如果参数已经存在则会用新的进行覆盖 希望本文所述对大家的php程序设计有所帮助。

  • 问题内容: 我想编写一个后台作业(EJB 3.1),该作业每分钟执行一次。为此,我使用以下注释: 工作正常。 但是,有时该工作可能需要一分钟以上。在这种情况下,计时器仍会触发,从而导致线程问题。 如果当前执行未完成,是否可以终止调度程序? 问题答案: 如果可能只有一个计时器同时处于活动状态,则有两种解决方案。 首先,应该在。在Singleton中,方法默认情况下是写锁定的,因此,当容器中仍有活动时

  • 本文向大家介绍Dapper.NET Dapper中的动态参数,包括了Dapper.NET Dapper中的动态参数的使用技巧和注意事项,需要的朋友参考一下 示例            

  • 问题内容: 请具有PHP经验的人提供以下帮助。在我的代码中的某个地方,我调用了一个非实例化类中的公共静态方法: 但是,我希望有许多这样的类,并根据用户的语言即时确定正确的类名称。换句话说,我有: …,我需要做类似的事情: 我知道我可以将语言作为参数传递给函数,并在一个通用类中处理它,但是由于种种原因,我希望使用其他解决方案。 有人吗?谢谢。 问题答案: 使用call_user_func函数: ht