我使用的是播放框架版本1.2.5,我想檢索所有沒有更新其會話5分鐘的連接用戶,然後我想設置他們的連接狀態爲「斷開」。在數據庫中檢索5分鐘以前的元素
這裏是我的模型:
@Entity
public class User extends Model {
@Required
public String name;
public boolean isConnected;
public Date lastConnectionDate;
}
這裏是更新用戶的工作:
Date fiveMinsAgo = new Date(new Date().getTime() - 5 * 60);
List<User> list = User.find("select u from User u where u.isConnected = true and u.lastConnectionDate < ?", fiveMinsAgo).fetch();
for (User user : list) {
// We set these accounts as disconnected
user.isConnected = false;
user.save();
}
此代碼似乎並不工作。即使用戶設置爲「斷開連接」,即使它們的lastConnectionDate不比5分鐘前更早。 我做錯了什麼?
有沒有更好的方法/代碼來做我想做的事情? (像一個UPDATE命令)
謝謝您的幫助
謝謝你們兩位的回答,它解決了我的問題!我不知道發生了什麼,我讀了javadoc,但是我沒有看到這個單元是在ms。順便說一下,我的做法是否正確?或者我應該使用UPDATE查詢? –