Je suis en train de mettre en œuvre une application J2EE qui a une licence de type expiration et j'aimerais envoyer une notification par e-mail à différents clients alors que la licence du client arrive à expiration. J'aimerais pouvoir faire quelque chose comme notifier, par exemple, 90/60/30 jours avant l'expiration, mais je ne veux évidemment pas envoyer accidentellement des notifications répétées si la demande de licences arrivant à échéance aboutit au même ensemble . La seule façon que je peux penser est d'avoir quelque chose stocké à côté de la clé de licence pour indiquer la date de la dernière notification (ou la date de notification suivante).Notification d'expiration à intervalles - Comment éviter les avis répétés pour la même entrée?
à savoir la société A, chaîne de licence, l'expiration: 2010-09-16, la notification suivante: 2010-08-30
Y at-il une meilleure façon de le faire que je ne pense? J'aimerais trouver une façon plus générique de planifier des événements basés sur le temps (30 jours avant que X ne se produise) pour d'autres éléments, donc si je peux éviter d'ajouter un 'temps de notification suivant' à un couple tables dans la base de données, j'opterais pour cela.
Je peux utiliser Quartz, si cela peut aider. Je l'ai déjà utilisé, mais uniquement avec le RamJobStore, donc rien n'a été conservé entre les redémarrages.
Ce que je veux dire, c'est que j'expédie un avis pour la compagnie A le 2 septembre parce que sa licence expire dans 90 jours. Ensuite, pour une raison quelconque, l'application est redémarrée, et elle revient, fait son contrôle périodique, trouve que la licence de la société A expire dans 90 jours. Pour autant que je puisse voir, je dois stocker quelque chose pour indiquer que le préavis de 90 jours leur a déjà été envoyé. Je demandais simplement s'il y avait une meilleure façon que ce que je pouvais penser. –
Dans ce cas, votre approche semble appropriée. Il doit être stocké quelque part pour suivre –