クォーツは通常quartz.properties
、クラスパスを介して構成されます。
例えば:
org.quartz.scheduler.instanceName = BagginsScheduler
org.quartz.threadPool.class=org.quartz.simpl.SimpleThreadPool
org.quartz.threadPool.threadCount=5
org.quartz.threadPool.threadPriority=1
Quartzジョブを実行するのと同じアプリケーション内から、プロパティを読み取りたいと思います。
スケジューラー名の読み取りは簡単です。
Scheduler scheduler = StdSchedulerFactory.getDefaultScheduler();
String name = scheduler.getSchedulerName();
しかし、どうすれば `threadPriority'プロパティを読み取ることができますか?
以下は機能しません。
scheduler.getContext().getString("org.quartz.threadPool.threadPriority");
更新された解決策:プロパティはQuartz APIを介して読み取ることができないようです、通常の方法で実行する必要がありますProperties
:
Properties prop = new Properties();
prop.load(AnyClassUsedByJVM.class.getClassLoader().getResourceAsStream("quartz.properties"));
String prio = prop.getProperty("org.quartz.threadPool.threadPriority");
これは正常に機能します。