本文主要是介绍java中判断用户今天是否第一次登录,若是则加积分,反之亦然,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
具体思路:
1、数据库中有一个datetime类型的last_login_time字段,即用户每次登录都会更新该字段;
2、在登录时先取出last_login_time字段的值,并把它按照yyyy-MM-dd格式转化为字符串,然后将现在的当前时间也按照这个格式转化为字符串,比较这两个字符串是否相等就可以判断该用户今天是否第一次登录。
//每天登录加一次积分,不会重复加积分
//根据userID从数据库中查询最后登录时间
String internalTimeString="select last_login_time from scpn_user where user_id="+user.getUserId();
Map internalTime=(Map)jdbcTemplate.queryForMap(internalTimeString);
Timestamp lastlogintime=(Timestamp)internalTime.get("last_login_time");
//将其按照以下格式转换成字符串
SimpleDateFormat sdfLogin = new SimpleDateFormat("yyyy-MM-dd");
//获取系统当前时间
Timestamp currentTime = new Timestamp(System.currentTimeMillis());
//按照格式转换两个数据
String lastTime = sdfLogin.format(lastlogintime);
String nowTime = sdfLogin.format(currentTime);
System.out.println("lastTime:"+lastTime);
System.out.println("nowTime:"+nowTime);
//判断不是同一天则加上积分,否则就不加
if(!nowTime.equals(lastTime)){
System.out.println("!nowTime.equals(lastTime):"+!nowTime.equals(lastTime));
在此更新积分;
}
这篇关于java中判断用户今天是否第一次登录,若是则加积分,反之亦然的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!