Постоянное свойство означает, что контейнер должен сохранять состояние таймера в базе данных. Это важно, если вам нужно гарантировать, что таймер будет срабатывать, даже если сервер отключен (намеренно или сбой). Когда сервер возвращается в сеть, требуется выполнить пропущенные таймеры. Установка таймера как постоянная также имеет побочный эффект обеспечения того, чтобы таймер выполнялся только на одном сервере JVM (но не обязательно на том, что его создал), что бы это ни значило для вашего продукта. Например, в среде с кластерным сервером это обычно означает, что даже если модуль EJB работает на 3 JVM, именно одна JVM будет выполнять таймер.
Постоянный = true был единственным вариантом, доступным до EJB 3.1. Некоторые операции таймера не являются достаточно критичными, чтобы гарантировать такой уровень надежности, поэтому опция была добавлена, чтобы обеспечить возможность использования нестационарных таймеров. Установка таймера как непостоянного также имеет побочный эффект обеспечения его запуска в JVM, в котором он был создан. Это может быть полезно для обновления кэша в памяти или статического HTML.
, как правило, хорошая идея иметь его «истина». который по умолчанию –