通过request对象获取访问网站用户的 IP 访问者的浏览器名 操作系统名 从哪里转过来 以及 Url 上的所有参数

String visiterIP=requset.getRemoteAddr();//访问者IP
String visitpageIP=requset.getRequestURI();//访问页IP
String Agent = requset.getHeader("User-Agent");
StringTokenizer st = new StringTokenizer(Agent,";");
st.nextToken();
String visiterbrowser = st.nextToken();//得到访问者的浏览器名
String visiterOS = System.getProperty("os.name");//得到访问者的操作系统名
String visitpagetitle=(String)requset.getAttribute("title");//得到标题
if(visitpagetitle==null||visitpagetitle.equals("")){
visitpagetitle="无标题";
}
String backIP=requset.getHeader("Referer");//得到父页面
if(backIP==null||backIP.equals("")){
backIP="用户直接访问";
}
SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd");//访问日期
String visitdate=sdf.format(new Date());
Date visittime=new Date();//访问时间

//获取到每个实际的参数 如:name=zhy6599 然后进行拆分放入到RequestMap中的keyMap
Map params = req.getParameterMap();
if ((params != null) && (params.size() > 0)) {
Iterator iter = params.entrySet().iterator();
String[] valueHolder = new String[1];

while (iter.hasNext()) {
Map.Entry entry = (Map.Entry) iter.next();
String name = (String) entry.getKey();

Object value = entry.getValue();
String[] values;
if (value instanceof String[]) {
values = (String[]) value;
} else {
valueHolder[0] = value.toString();
values = valueHolder;
}

for (int i = 0; i < values.length; i++) {
if (values[i] != null) {
System.out.println(name + "=" + values[i]);
}
}

}
}

log.info(params);

你可能感兴趣的:(request)