Gerador de Expressões Cron para Spring @Scheduled
Esta página cobre a sintaxe cron usada pelo Spring @Scheduled: estrutura de campos, numeração dos dias da semana e quais caracteres especiais ele suporta.
Referência Rápida
Número de campos
6
Campo de segundos
Sim
Campo de ano
Não
Fuso horário
Local / configurável
Caracteres especiais (L / #)
Sim
Exige "?"
Não
Numeração do dia da semana
Sun=0, Mon=1, Tue=2, Wed=3, Thu=4, Fri=5, Sat=6
Expressões Cron comuns do Spring @Scheduled
| A cada 5 minutos | 0 */5 * * * * |
| A cada 15 minutos | 0 */15 * * * * |
| A cada hora | 0 0 * * * * |
| Diariamente à meia-noite | 0 0 0 * * * |
| Diariamente às 9h | 0 0 9 * * * |
| Todo dia útil às 9h | 0 0 9 * * MON-FRI |
| Toda segunda-feira às 9h | 0 0 9 * * MON |
| Duas vezes ao dia (0h e 12h) | 0 0 */12 * * * |
| No primeiro dia de cada mês | 0 0 0 1 * * |
| No último dia de cada mês | 0 0 23 L * * |
Perguntas Frequentes
Qual a diferença entre Spring @Scheduled e o cron padrão do Linux?
O Spring @Scheduled difere do cron do Linux no número de campos, na numeração dos dias da semana ou nos caracteres especiais suportados — veja a tabela de Referência Rápida acima para as diferenças exatas.
Posso converter uma expressão cron do Linux para Spring @Scheduled automaticamente?
Sim — cole na ferramenta Cron multiplataforma acima (ou na página principal do Editor Cron) e mude para a aba Spring @Scheduled para obter a expressão equivalente instantaneamente.
O Spring @Scheduled suporta L, W ou #?
Sim. O Spring @Scheduled suporta L (último dia do mês) e # (enésimo dia da semana do mês, ex.: "MON#1" para a primeira segunda-feira).
O Spring @Scheduled roda no meu fuso horário local ou em UTC?
O Spring @Scheduled avalia os agendamentos no fuso horário que você configurar (ou no fuso do sistema/servidor, se nenhum for definido) — não é fixo em UTC.