📄 online.java.svn-base
字号:
package com.chis.util;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.LinkedList;
import java.util.List;
import java.util.ListIterator;
import com.stframe.form.ActionForm;
import com.stframe.form.DataForm;
import com.stframe.servlet.ActionInstance;
public class OnLine extends ActionInstance {
public static List log_list = null;
static {
log_list = new LinkedList();
}
@Override
public int execute(ActionForm af) throws Exception {
/**
* 在线用户
*/
// 设置session在线时间
int online_time = 900;
af.getHttpRequest().getSession().setMaxInactiveInterval(online_time);
String session_id = af.getHttpRequest().getSession().getId();
String user_id = af.getHttpSession().getAttribute("USERID").toString();
String corp_name = af.getHttpSession().getAttribute("HBDWMC")
.toString();
String ol_loginname = af.getHttpSession().getAttribute("LOGONNAME")
.toString();
String ol_name = af.getHttpSession().getAttribute("USERNAME")
.toString();
String ol_logintime = af.getHttpSession()
.getAttribute("THE_LOGIN_DATE").toString();
String ip = null;
String date = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss")
.format((Calendar.getInstance()).getTime());
if (af.getHttpRequest().getHeader("x-forwarded-for") == null) {
ip = af.getHttpRequest().getRemoteAddr();
} else {
ip = af.getHttpRequest().getHeader("x-forwarded-for");
}
if (log_list.size() == 0) {
DataForm log_df = new DataForm("SYS_ONLINE");
log_df.set("OL_USERID", user_id);
log_df.set("CORP_NAME", corp_name);
log_df.set("OL_SESSIONID", session_id);
log_df.set("OL_NAME", ol_name);
log_df.set("OL_LOGINNAME", ol_loginname);
log_df.set("OL_IP", ip);
log_df.set("OL_LOGINTIME", ol_logintime);
log_list.add(log_df);
} else if (log_list.size() > 0) {
ListIterator iter = log_list.listIterator(log_list.size());
int tag = 0;
while (iter.hasPrevious()) {
DataForm log_user = (DataForm) iter.previous();
String onsessionid = log_user.get("OL_SESSIONID").toString();
//sessionid不添加
if (onsessionid.equals(session_id)) {
tag++;
}
//如果同个用户登录
if(log_user.get("OL_USERID").toString().equals(user_id)){
if (!onsessionid.equals(session_id)) {
iter.remove();
}
}
}
if (tag == 0) {
DataForm log_df = new DataForm("SYS_ONLINE");
log_df.set("OL_USERID", user_id);
log_df.set("CORP_NAME", corp_name);
log_df.set("OL_SESSIONID", session_id);
log_df.set("OL_NAME", ol_name);
log_df.set("OL_LOGINNAME", ol_loginname);
log_df.set("OL_IP", ip);
log_df.set("OL_LOGINTIME", ol_logintime);
log_list.add(log_df);
}
}
af.getHttpRequest().setAttribute("log_list", log_list);
return 1;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -