1500字范文,内容丰富有趣,写作好帮手!
1500字范文 > java获取登录内网ip地址

java获取登录内网ip地址

时间:2022-03-16 16:22:51

相关推荐

java获取登录内网ip地址

java获取登录内网ip地址

最近好多小伙伴在和我说怎么java怎么获取登录的ip地址,今天就分享一下我的方法了。

1、直接获取ip地址

//获取request请求HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest();//获取IP地址String ipaddr = request.getRemoteAddr();if(ipaddr == "0:0:0:0:0:0:0:1"){ipaddr ="127.0.0.1";}System.out.println(ipaddr);

2、第二种封装成util工具类

public class IPUtil {/*** 获取ip*/public static String getIp(HttpServletRequest request) {if (request == null)return "";String ip = request.getHeader("X-Requested-For");if (StringUtils.isEmpty(ip) || "unknown".equalsIgnoreCase(ip)) {ip = request.getHeader("X-Forwarded-For");}if (StringUtils.isEmpty(ip) || "unknown".equalsIgnoreCase(ip)) {ip = request.getHeader("Proxy-Client-IP");}if (StringUtils.isEmpty(ip) || "unknown".equalsIgnoreCase(ip)) {ip = request.getHeader("WL-Proxy-Client-IP");}if (StringUtils.isEmpty(ip) || "unknown".equalsIgnoreCase(ip)) {ip = request.getHeader("HTTP_CLIENT_IP");}if (StringUtils.isEmpty(ip) || "unknown".equalsIgnoreCase(ip)) {ip = request.getHeader("HTTP_X_FORWARDED_FOR");}if (StringUtils.isEmpty(ip) || "unknown".equalsIgnoreCase(ip)) {ip = request.getRemoteAddr();}if ("0:0:0:0:0:0:0:1".equals(ip)) {return "127.0.0.1";}return ip;}public static boolean isLocalHost(String ip) {return "127.0.0.1".equals(ip) || "localhost".equals(ip);}}

如果这篇文章帮助了你,记得点个赞哦!!!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。