我的思路是这样:一个用户登录,如果是第一次登录且成功的话就在页面上显示:您是第一次登录,登录时间是:*年*月*日;如果用户不是第一次登录且登录成功,则在页面上显示:您最后一次登录时间是:*年*月*日(如2009年5月4日) 这次登录时间是:*年*月*日(如2009年5月25日)。现在在java文件中定义有一个lasttime 和nowtime,并存到数据库里,问题就来了,我怎样取出lasttime呢?不知道怎么写?相关的类有:LoginInfoService.java ;LoginAction.java;LoginInfo.java;UserAccountModel.java 我的LoginAction.java里代码如下:package login.action;import login.LoginInfo;
import login.service.LoginInfoService;
import com.opensymphony.xwork2.ActionSupport;
import com.opensymphony.xwork2.ActionContext;import java.util.Date;
import model.UserAccountModel;public class LoginAction extends ActionSupport implements LoginInfo { private String loginname;
private String password;
public Date lasttime;
public Date nowtime; public String getLoginname() {
return this.loginname;
} public void setLoginname(String loginname) {
this.loginname = loginname;
} public String getPassword() {
return this.password;
} public void setPassword(String password) {
this.password = password;
} // 时间
public Date getNowtime() {
return nowtime;
} public void setNowtime(Date nowtime) {
this.nowtime = nowtime;
} public Date getLasttime() {
return lasttime;
} public void setLasttime(Date lasttime) {
this.lasttime = lasttime;
}//下面这个不懂写了,请帮忙,谢谢
public String execute() throws Exception {
UserAccountModel uaModel = LoginInfoService.getInstance()
.retrieveUserAccountModel(this);
if (uaModel != null) {
ActionContext.getContext().getSession().put("UserAccount", uaModel);
if (lasttime == null) {
lasttime = uaModel.nowtime;
System.out.println("你是第一次登录!" + lasttime);
} else
System.out.println("你最后一次登录时间是:" + lasttime); nowtime = new Date(System.currentTimeMillis());
System.out.println("你这次登录时间是:" + nowtime);
return "success";
}
return "input";
}}
import login.service.LoginInfoService;
import com.opensymphony.xwork2.ActionSupport;
import com.opensymphony.xwork2.ActionContext;import java.util.Date;
import model.UserAccountModel;public class LoginAction extends ActionSupport implements LoginInfo { private String loginname;
private String password;
public Date lasttime;
public Date nowtime; public String getLoginname() {
return this.loginname;
} public void setLoginname(String loginname) {
this.loginname = loginname;
} public String getPassword() {
return this.password;
} public void setPassword(String password) {
this.password = password;
} // 时间
public Date getNowtime() {
return nowtime;
} public void setNowtime(Date nowtime) {
this.nowtime = nowtime;
} public Date getLasttime() {
return lasttime;
} public void setLasttime(Date lasttime) {
this.lasttime = lasttime;
}//下面这个不懂写了,请帮忙,谢谢
public String execute() throws Exception {
UserAccountModel uaModel = LoginInfoService.getInstance()
.retrieveUserAccountModel(this);
if (uaModel != null) {
ActionContext.getContext().getSession().put("UserAccount", uaModel);
if (lasttime == null) {
lasttime = uaModel.nowtime;
System.out.println("你是第一次登录!" + lasttime);
} else
System.out.println("你最后一次登录时间是:" + lasttime); nowtime = new Date(System.currentTimeMillis());
System.out.println("你这次登录时间是:" + nowtime);
return "success";
}
return "input";
}}
如果能取到就继续,取不到就记录
再修改数据库中的lasttime为当前时间,
当用户下次登陆时,取得lasttime即为上次登陆时间!
如果为空,则您是第一次登录XX,同时更新数据库nowtime为当前系统时间
如果不为空,则您最后一次登录时间XX,也同时更新数据库nowtime为当前系统时间