获取用户ip地址的方法

获取用户的真实IP地址

IPHelper.java

**
 * IP帮助工具
 */
public class IPHelper {
    private static final String UNKNOWN = "unknown";

    /**
     * 得到用户的真实地址,如果有多个就取第一个
     *
     * @return
     */
    public static String getIpAddr() {
        HttpServletRequest request = HttpContextUtils.getHttpServletRequest();
        if (request == null) {
            return null;
        }
        String ip = request.getHeader("x-forwarded-for");
        if (ip == null || ip.length() == 0 || UNKNOWN.equalsIgnoreCase(ip)) {
            ip = request.getHeader("Proxy-Client-IP");
        }
        if (ip == null || ip.length() == 0 || UNKNOWN.equalsIgnoreCase(ip)) {
            ip = request.getHeader("WL-Proxy-Client-IP");
        }
        if (ip == null || ip.length() == 0 || UNKNOWN.equalsIgnoreCase(ip)) {
            ip = request.getRemoteAddr();
        }
        String[] ips = ip.split(",");
        return ips[0].trim();
    }


}

HttpContextUtils.java

public class HttpContextUtils {

	public static HttpServletRequest getHttpServletRequest() {
		return ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest();
	}
}

其中RequestContextHolder来自 org.springframework.web

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
件简介: IPHelper是一款帮助您快速设置IP地址、网关、DNS及IE代理服务器等相关设置的绿色免费软件, 特别适合移动办公用户和需要经常在不同网段间切换的用户使用。作者最早开发此软件时是为了满足 自身的更改IP的需要,随后在网络上众多用户给予了肯定、支持和帮助,4年多来IPHelper经过的不断 改进,操作更加便利,功能不断完善,希望它能给更多的用户带来便利! 更新日志: IPHelper5.2 - 增加了修改计算机名称及执行自定义命令等功能。修正了部分bug,增进界面友好性。(2008/12) IPHelper4.6 - 增加了“生成快捷方式”功能,大大提高了部分常用配置的切换速度。软件可以 最小化到任务栏,并快速切换配置。修正了部分bug,增进界面友好性。(2007/01) IPHelper4.2 - 改用xml配置文件存放历史配置;增加多IP多DNS设置;增加IE代理服务器设置; 增强了操作性。(2006/07) IPHelper3.5 - 增加网络连通情况测试。调整了界面结构,增加界面友好性。(2005/03) IPHelper3.3 - 增加了自动备份功能;增加了小图标显示功能(右键菜单内选择);修正了多 DNS会自动退出的Bug。(2004/11) IPHelper3.1 - 加强了界面友好度,可以更改配置名称。添加了DNS修改功能。(2004/03) IPHelper2.6 - 加强了对多网卡的支持,对性能进行了优化,添加了新版本提示功能。(2003/08) IPHelper2.1 - 第一个发布版本,小巧实用的特性得到了网友们的肯定。(2002/11) 联系方式: Web: http://www.4w5w.com/soft/ E-Mail: www@4w5w.com
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值