精华内容
下载资源
问答
  • java获取访问IP

    千次阅读 2018-09-28 17:45:16
    String ipAddresses = request.getHeader("X-Forwarded-For"); if (ipAddresses == null || ipAddresses.length() == 0 || "unknown".equalsIgnoreCase(ipAddresses)) { ...
    	//X-Forwarded-For:Squid 服务代理
        String ipAddresses = request.getHeader("X-Forwarded-For");
    
        if (ipAddresses == null || ipAddresses.length() == 0 || "unknown".equalsIgnoreCase(ipAddresses)) {
            //Proxy-Client-IP:apache 服务代理
            ipAddresses = request.getHeader("Proxy-Client-IP");
        }
    
        if (ipAddresses == null || ipAddresses.length() == 0 || "unknown".equalsIgnoreCase(ipAddresses)) {
            //WL-Proxy-Client-IP:weblogic 服务代理
            ipAddresses = request.getHeader("WL-Proxy-Client-IP");
        }
    
        if (ipAddresses == null || ipAddresses.length() == 0 || "unknown".equalsIgnoreCase(ipAddresses)) {
            //HTTP_CLIENT_IP:有些代理服务器
            ipAddresses = request.getHeader("HTTP_CLIENT_IP");
        }
    
        if (ipAddresses == null || ipAddresses.length() == 0 || "unknown".equalsIgnoreCase(ipAddresses)) {
            //X-Real-IP:nginx服务代理
            ipAddresses = request.getHeader("X-Real-IP");
        }
    
        //有些网络通过多层代理,那么获取到的ip就会有多个,一般都是通过逗号(,)分割开来,并且第一个ip为客户端的真实IP
        if (ipAddresses != null && ipAddresses.length() != 0) {
            ip = ipAddresses.split(",")[0];
        }
    
        //还是不能获取到,最后再通过request.getRemoteAddr();获取
        if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ipAddresses)) {
            ip = request.getRemoteAddr();
        }
    
        // ip配置
        if (ip.equals("127.0.0.1") || ip.endsWith("0:0:0:0:0:0:1")) {
            // 根据网卡取本机配置的IP
            return "127.0.0.1";
        }
    
    展开全文
  • java获取访问服务器路径

    千次阅读 2019-06-12 15:16:39
    我们有的时候会在service层获取request填充一些诸如用户名和IP地址等信息,这个时候如果不想从Controller层传request,可以在service直接使用 /** *在service层获取request **/ public static HttpServletRequest...

    我们有的时候会在service层获取request填充一些诸如用户名和IP地址等信息,这个时候如果不想从Controller层传request,可以在service直接使用

    /**
      *在service层获取request
    **/
    public static HttpServletRequest getHttpServletRequest() {
            HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest();
            return request;
        }
        /**
         * 返回服务器路径
         * @return
         */
        public static String getServerPath() {
            HttpServletRequest request = getHttpServletRequest();
            StringBuilder stringBuilder = new StringBuilder();
            stringBuilder.append(request.getScheme());  //http
            stringBuilder.append("://");
            stringBuilder.append(request.getServerName());  //127.0.0.1
            stringBuilder.append(":");
            stringBuilder.append(request.getServerPort());  //8080
            stringBuilder.append(request.getContextPath()); //项目名称
            return stringBuilder.toString();  //http://127.0.0.1:8080/
        }

     

    展开全文
  • * 获取本机IP */ public static String getLocalIP() { String ip = ""; try { if(isLinux()){ Enumeration<?> e1 = (Enumeration<?>) NetworkInterface .getNetworkInterfaces();

    直接调用打印即可

    /** 
     * 获取本机IP 
     */  
    public static String getLocalIP() {  
        String ip = "";  
        try {  
            if(isLinux()){  
                Enumeration<?> e1 = (Enumeration<?>) NetworkInterface  
                        .getNetworkInterfaces();  
                while (e1.hasMoreElements()) {  
                    NetworkInterface ni = (NetworkInterface) e1.nextElement();  
                    if (!ni.getName().equals("eth0")) {  
                        continue;  
                    } else {  
                        Enumeration<?> e2 = ni.getInetAddresses();  
                        while (e2.hasMoreElements()) {  
                            InetAddress ia = (InetAddress) e2.nextElement();  
                            if (ia instanceof Inet6Address)  
                                continue;  
                            ip = ia.getHostAddress();  
                        }  
                        break;  
                    }  
                }  
            }else{  
                ip = InetAddress.getLocalHost().getHostAddress().toString();  
            }  
                  
        } catch (Exception e) {  
            e.printStackTrace();  
        }  
      
        return ip;  
    }  
    
    
     public static void main(String[] args) {
          System.out.println( "本机IP:"+getLocalIP());
        }
    

    输出结果下图
    在这里插入图片描述

    展开全文
  • java获取服务器IP和端口

    千次阅读 2019-03-29 18:10:39
    获取服务器IP和端口 struts2 获取request HttpServletRequest requet=ServletActionContext.getRequest(); requet.getScheme()+

    获取服务器的IP和端口

    struts2 获取request

    HttpServletRequest requet=ServletActionContext.getRequest();

    requet.getScheme()+"?/"+requet.getServerName()+":"+requet.getServerPort()

    (例如)结果为:http://localhost:8080/

    方法 释义
    request.getHeader(“User-Agent”); //就是取得客户端的系统版本
    request.getRemoteAddr(); //取得客户端的IP
    request.getRemoteHost(); //取得客户端的主机名
    request.getRemotePort(); //取得客户端的端口
    request.getRemoteUser(); //取得客户端的用户
    request.getLocalAddr(); //取得服务器IP
    request.getLocalPort(); //取得服务器端口
    1、JSP中获得当前应用的相对路径和绝对路径

    根目录所对应的绝对路径:request.getRequestURI()
    文件的绝对路径  :application.getRealPath(request.getRequestURI());
    当前web应用的绝对路径 :application.getRealPath("/");
    取得请求文件的上层目录:new File(application.getRealPath(request.getRequestURI())).getParent()

    2 Servlet中获得当前应用的相对路径和绝对路径

    根目录所对应的绝对路径:request.getServletPath();
    文件的绝对路径 :request.getSession().getServletContext().getRealPath(request.getRequestURI())
    当前web应用的绝对路径 :servletConfig.getServletContext().getRealPath("/");
    (ServletContext对象获得几种方式:
    javax.servlet.http.HttpSession.getServletContext()
    javax.servlet.jsp.PageContext.getServletContext()
    javax.servlet.ServletConfig.getServletContext()
    )

    3.Java类中获得绝对路径

    根据java.io.File的Doc文挡,可知: 默认情况下new File("/")代表的目录为:System.getProperty(“user.dir”)。

    拓展

    上面的获取IP方法,只能获取到127.0.0.1
    在window下使用 InetAddress.getLocalHost().getHostAddress()

    这种方法在linux却只能取到127.0.0.1这个让人无奈的地址。。。这简直是让人不能忍受的啊。。。这种地址不用获取,我们谁不知道。。。 
    在网上搜索了很多,发现说这个问题的并不多,所以,我把找到的一段代码分享给大家。。。当然这段代码需要jdk1.5以上版本 
    
    //---代码
    Enumeration<NetworkInterface> netInterfaces = null;   
    try {   
        netInterfaces = NetworkInterface.getNetworkInterfaces();   
        while (netInterfaces.hasMoreElements()) {   
            NetworkInterface ni = netInterfaces.nextElement();   
            System.out.println("DisplayName:" + ni.getDisplayName());   
            System.out.println("Name:" + ni.getName());   
            Enumeration<InetAddress> ips = ni.getInetAddresses();   
            while (ips.hasMoreElements()) {   
                System.out.println("IP:"  
                + ips.nextElement().getHostAddress());   
            }   
        }   
    } catch (Exception e) {   
        e.printStackTrace();   
    }  
    
    Enumeration<NetworkInterface> netInterfaces = null;
    try {
            netInterfaces = NetworkInterface.getNetworkInterfaces();
            while (netInterfaces.hasMoreElements()) {
                    NetworkInterface ni = netInterfaces.nextElement();
                    System.out.println("DisplayName:" + ni.getDisplayName());
                    System.out.println("Name:" + ni.getName());
                    Enumeration<InetAddress> ips = ni.getInetAddresses();
                    while (ips.hasMoreElements()) {
                            System.out.println("IP:"
                            + ips.nextElement().getHostAddress());
                    }
            }
    } catch (Exception e) {
            e.printStackTrace();
    }
    
    // 这段代码会输出计算机中所有设备的ip
    

    转载请注明出处!

    展开全文
  • 1、获取Tomcat端口 MBeanServer beanServer = ManagementFactory.getPlatformMBeanServer(); Set<ObjectName> objectNames = null; try { objectNames = beanServer .queryNames(new ObjectName("*:type=...
  • java获取服务器IP和端口

    万次阅读 2013-12-26 11:21:12
    前几天写过一个获取远程服务器IP和端口的程序,从网上查了一些资料顺便加一些自己的理解,希望对大家有所帮助: struts2 获取request HttpServletRequest requet=ServletActionContext.getRequest(); ...
  • 1、tomcat是一款免费的开源Web服务器,如果部署在本地,那么对应的那么为localhost,对应地址为127.0.0.1。...如果部署在服务器(linux)系统类,则需要通过服务器Ip地址进行访问。 2、下面说说怎么获取Ip地址:
  • 如何用Java和jsp获取服务器ip

    千次阅读 2017-08-04 10:15:22
    Java中: 1、获取服务端ip String ip = InetAddress.getLocalHost().getHostAddress(); 2、获取客户端本机ip String remoteAddr = request.getRemoteAddr(); String forwarded = request.getHeader("X-...
  • Java获取客户端IP

    千次阅读 2016-06-15 14:19:36
    转载地址:Java获取客户端IP 在开发工作中,我们常常需要获取客户端的IP。一般获取客户端的IP地址的方法是:request.getRemoteAddr();但是在通过了Apache,Squid等反向代理软件就不能获取到客户端的真实IP地址了。原因...
  • JAVA获取访问用户的客户端IP(适用于公网与局域网) /** * 获取访问用户的客户端IP(适用于公网与局域网). */ public static final String getIpAddr(final HttpServletRequest request) throws Exception ...
  • Java获取访问服务端的客户端IP和MAC地址
  • java获取当前服务器Ip地址

    千次阅读 2018-02-24 11:04:30
    1、tomcat是一款免费的开源Web服务器,如果部署在本地,那么对应的那么为localhost,对应地址为127.0.0.1... 如果部署在服务器(linux)系统类,则需要通过服务器Ip地址进行访问。2、下面说说怎么获取Ip地址: ...
  • try { Enumeration... hostIP=ia.getHostAddress(); } } } } catch (SocketException e) { e.printStackTrace(); }   转载于:https://www.cnblogs.com/chaojibaidu/p/10965992.html
  • Java获取本机ip地址

    千次阅读 2018-09-19 15:43:48
    设定某一IP的主机执行任务,定时任务先获取服务器IP,和绑定的IP进行比较,匹配则执行任务。 Java用户获取IP地址的是java.net包下的NetworkInterface类。 代码比较简单,直接上 public static String get...
  • Java获取请求客户端的真实IP地址

    万次阅读 多人点赞 2016-08-03 12:26:17
    整理网友的材料,最后有源码,亲测能解决所有java获取IP真实地址的问题 整理的这里: 1、链接1 2、链接2 JSP里,获取客户端的IP地址的方法是: request.getRemoteAddr() ,这种方法在大部分情况下都是有效的。...
  • 这几天搞了用java获取ip地址,由于测试方法不对,一直没有成功,昨天终于想通了并不是方法不对,而是我的测试方法不对,下面这个方法,完全可以得到客户端的公网ip地址 但是在测试的时候注意:我用的是weblogic测试...
  • java获取服务器真实外网IP

    千次阅读 2014-07-20 16:14:08
    package com.xiaoma.util; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStream; import java.io.InputStreamReader; import java.net.URL; import java.net.URLConnection;
  • Java获取访问者真实的IP地址

    万次阅读 多人点赞 2018-04-14 11:41:01
    主要说明在JSP里,获取客户端的IP地址的方法是:request.getRemoteAddr(),这种方法在大部分情况下都是有效的。但是在通过了Apache,Squid等反向代理软件就不能获取到客户端的真实IP地址了。如果使用了反向代理软件,...
  • Java 获取请求主机IP地址

    千次阅读 2016-01-01 12:45:05
    本文向您介绍使用Java获取IP地址的方法,在request.getRemoteAddr()方法在使用方向代理失效的情况下,本文的方法依然可以获取真实地址。在JSP里,获取客户端的IP地址的方法是:request.getRemoteAddr(),这种方法在...
  • java 获取用户的ip都是 127.0.0.1

    千次阅读 2018-07-26 17:33:08
    开发环境是 java+nginx+tomcat...获取ip的代码 private String getIpAddress(HttpServletRequest request) { String ip = null; String ipAddresses = request.getHeader("X-Forwarded-For"); if (ip...
  • Java获取用户真实IP

    千次阅读 2014-12-12 18:04:09
    在JSP里,获取客户端的IP地址的方法是:request.getRemoteAddr(),这种方法在大部分情况下都是有效的。但是在通过了Apache,Squid等反向代理软件就不能获取到客户端的真实IP地址了。 如果使用了反向代理软件,将...
  • JAVA服务器获取手机设备的IP地址

    千次阅读 2017-09-21 13:34:00
    String ipAddress = request.getRemoteAddr(); String ipAddress = ip; if(ipAddress.equals("127.0.0.1") || ipAddress.equals("0:0:0:0:0:0:0:1")){ //根据网卡获取本机配置的IP地址 InetAdd
  • Java获取外网ip地址

    万次阅读 2015-08-09 17:48:22
    最近在做一个app,其中有一个功能点是获取本机的外网ip,网上流传的绝大部分都是获取局域网ip的方法,有些似乎能够获取外网ip方法但也已经失效。 大部分提到的都是 ip = InetAddress.getLocalHost()....
  • 附上工具类 复制即可用   package com.vimi8.bigdata.auth.utils; import net.sf.json.JSONObject; import org.apache.commons.lang.StringUtils; import javax.servlet....import java.io.Buf
  • Java获取访客IP地址

    千次阅读 2019-01-19 10:41:11
    获取IP地址 在开发工作中,我们常常需要获取客户端的IP ➢ nginx配置 为了拿到真实的IP地址,避免代理等错误源,需要在nginx配置 location / { # 指向当前的某个服务端口(根据服务单独java打包jar开启对应的...
  • JAVA获取Linux服务器信息

    千次阅读 2018-09-06 11:31:11
    第一种–获取简单的基本信息,直接读取linux系统中的文件获取。 package hotelPro; import java.io.BufferedReader; import java.io.File; import java.io.FileInputStream; import java.io.IOException; import ...
  • java服务器获取客户端IP地址

    千次阅读 2015-08-28 09:13:41
    在开发工作中,我们常常需要获取...原因:由于在客户端和服务之间增加了中间代理,因此服务器无法直接拿到客户端的IP,服务器端应用也无法直接通过转发请求的地址返回给客户端。 现在图示代理上网和IP的关系:  第一种情况

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 126,684
精华内容 50,673
关键字:

java获取访问服务器的ip

java 订阅