因为要做一个签到模块,所以数据库中签到表加了一个时间字段,这个字段是词条数据发生改变是自动修改,
签到一次signnumber增加一次,currentsigntime字段自动更新时间为此条数据最后一次更新的时间
这里放上mysql让数据库中时间字段自动更新的方法
ALTER TABLE `table_name`
MODIFY COLUMN `UpdateTime` timestamp NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '创建时间' ;
- 1
- 2
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
//使时间以年月日的形式就行
Date currenttime = articleService.queryIfExistUid(uidd);//取出数据库中此条数据最后一次更新的时间
Date todaytime = new Date();//获取当前时间
String ctime = sdf.format(currenttime);
String ttime = sdf.format(todaytime);
//将时间变换为毫秒形式有利于计算
boolean flag = false;
if(currenttime==null){
flag = articleService.addSignForNewUser(uidd);
//输入数据的方法
}else {
if( (sdf.parse(ttime).getTime() - sdf.parse(ctime).getTime())< 24*60*60*1000){
//表示当前时间与最后一次更新时间相隔不够一天
flag = false;
}else {
flag = articleService.addSignForUser(uidd);
}
}