У меня есть java веб-проект с обратным отсчетом для каждого объекта пользователя:
import javax.persistence.*;
import java.util.Timer;
import java.util.TimerTask;
@Entity(name = "Cliente")
public class ClienteEntity {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
Long id;
@Column(name = "usuario")
String usuario;
@Column(name = "countdown")
int countdown;
public int getCountdown() {
return countdown;
}
public void setCountdown(int countdown) {
this.countdown = countdown;
}
public Long getId() {
return id;
}
public void setId(Long id) {
this.id = id;
}
public String getUsuario() {
return usuario;
}
public void setUsuario(String usuario) {
this.usuario = usuario;
}
public void countingDown() {
new Timer().schedule(new TimerTask() {
@Override
public void run() {
if (countdown > 0) {
countdown = countdown - 1;
}
}
}, 0, 1000);
}
}
После установки значения обратного отсчета он должен работать, после вызова .countingDown (), до тех пор, пока не достигнет 0. Ситуация в том, что я не вижу, как его поддерживать. Как только эта сущность сохранена, она больше не запускается.
Последняя идея заключается в том, что с помощью @Get я могу получить эту информацию (опять же: проблема в том, что счетчик не работает. Он всегда равен 25).
Как я могу это сделать? Возможно, идея использовать этот метод внутри Entity неверна. Буду признателен за помощь / идеи.