. . / , Java- , .
datamodel, , , /. /. , , , MySQL:
CREATE TABLE mytable (
id BIGINT NOT NULL AUTO_INCREMENT PRIMARY KEY,
somevalue VARCHAR(255) NOT NULL,
lastupdate TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
INDEX (lastupdate)
)
/ lastupdate . INSERT INTO mytable (somevalue) VALUES (?) UPDATE mytable SET somevalue = ? WHERE id = ?, .
, Java , ( Timer TimerTask ScheduledExecutorService Runnable Callable), :
Date now = new Date();
statement = connection.prepareStatement("SELECT id FROM mytable WHERE lastupdate BETWEEN ? AND ?");
statement.setDate(1, this.lastTimeChecked);
statement.setDate(2, now);
resultSet = statement.executeQuery();
while (resultSet.next()) {
}
this.lastTimeChecked = now;
: , . , / . Java- / (, ) SQL- , .