发布网友
共2个回答
热心网友
只能根据用户请求带过来的sessionID所匹配的ip地址 而且只可以通过request获得ip 反正你能得到session 那得到request是一样简单的不是吗
得到request后命令为:
String ip = request.getRemoteAddr();
这个ip字符串就是了追问HttpSessionListener 当监听到一个session建立时,能得到request吗?如何得到,如不能得到那么能不能通过监听的HttpSessionEvent得到?
追答你需要实现ServletRequestListener 接口
在类中声明 HttpServletRequest request;
然后在你需要的地方调用 String ip = request.getRemoteAddr();
然后在类里声明它的一个实现方法:
public void requestInitialized(ServletRequestEvent event) {
request = (HttpServletRequest)event.getServletRequest();
}
最后需要在web.xml中配置:
com.eaie.system.SessionListener
需要注意的是LISTENR的位置,必须在的相关配置之后,在的相关配置之前
热心网友
通过request获取ip追问我希望在HttpSessionListener监听中,监听到一个session就获取到它的ip ?能实现吗