我只需要一些指导来让我继续前进。所以我正在做这个应用程序,用户可以在点击更新按钮后更新他/她的个人资料。当前时间将被捕获并存储在数据库中。
我以前从未做过类似的事情,如果有人能给我指出一篇文章或一些文档,我将非常感激。
我正在使用 primefaces、jsf 和 mysql。
我已经编码并让我的项目中的每个功能都正常工作,除了更新功能。如果有人可以帮助我,我很乐意在这里分享我的代码!
最佳答案
您可以按如下方式获取当前时间(时间戳):
long timestamp = System.currentTimeMillis();
或者甚至作为 java.util.Date
对象:
Date now = new Date();
然后您只需将该值准确地保留为数据库中的TIMESTAMP
字段即可。究竟如何做到这一点无法回答,因为您没有提供有关如何进行持久性的任何信息。例如,如果您使用的是 JPA,则可以使用 @PreUpdate
对此的注释。
@Entity
public class User {
@Column @Temporal(TemporalType.TIMESTAMP)
private Date lastUpdate;
@PreUpdate
public void onUpdate() {
lastUpdate = new Date();
}
}
或者,根据所使用的数据库,您也可以将列配置为在每次 UPDATE
时自动更新自身。在您的例子中,您使用的是 MySQL,MySQL 创建列语法为:
lastUpdate TIMESTAMP DEFAULT now() ON UPDATE now()
也就是说,这一切与 JSF/PrimeFaces 无关。
关于java - 点击更新按钮时捕获当前时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9435600/