1. 程式人生 > >java中獲取當前伺服器的Ip地址的方法

java中獲取當前伺服器的Ip地址的方法

1、tomcat是一款免費的開源Web伺服器,如果部署在本地,那麼對應的那麼為localhost,對應地址為127.0.0.1。

例子:可以通過http://localhost:8080/專案root值訪問,也可以通過http://127.0.0.1/專案root值訪問。
如果部署在伺服器(linux)系統類,則需要通過伺服器的Ip地址進行訪問。

2、下面說說怎麼獲取Ip地址:

獲取本地的Ip地址:
public static void main(String[] args) {
    try {
       InetAddress address = InetAddress.getLocalHost();//獲取的是本地的IP地址 //PC-20140317PXKX/192.168.0.121
       String hostAddress = address.getHostAddress());//192.168.0.121      
       InetAddress address1 = InetAddress.getByName(“www.wodexiangce.cn”);//獲取的是該網站的ip地址,比如我們所有的請求都通過nginx的,所以這裡獲取到的其實是nginx伺服器的IP地 
       String hostAddress1 = address1.getHostAddress());//124.237.121.122 
       InetAddress[] addresses = InetAddress.getAllByName(“www.baidu.com”);//根據主機名返回其可能的所有InetAddress物件 
       for(InetAddress addr:addresses){ 
       System.out.println(addr);//www.baidu.com/14.215.177.38 
       //www.baidu.com/14.215.177.37 
      } 
    } catch (UnknownHostException e) { 
       e.printStackTrace();
   } 
 }
獲取伺服器的Ip地址(其他人寫的)
/**
   * 獲取伺服器IP地址
   * @return
   */
  @SuppressWarnings(“unchecked”)
  public static String getServerIp(){
    String SERVER_IP = null;
    try {
      Enumeration netInterfaces = NetworkInterface.getNetworkInterfaces();
      InetAddress ip = null;
      while (netInterfaces.hasMoreElements()) {
        NetworkInterface ni = (NetworkInterface) netInterfaces.nextElement();
        ip = (InetAddress) ni.getInetAddresses().nextElement();
        SERVER_IP = ip.getHostAddress();
        if (!ip.isSiteLocalAddress() && !ip.isLoopbackAddress()
            && ip.getHostAddress().indexOf(“:”) == -1) {
          SERVER_IP = ip.getHostAddress();
          break;
        } else {
          ip = null;
        }
      }
    } catch (SocketException e) {
      // TODO Auto-generated catch block
      e.printStackTrace();
    }
  
    return SERVER_IP;
  }
}

基於SSM框架的農業物聯網智慧養殖系統中的養殖日誌要求上傳一張圖片到伺服器中。本地測試時,由於儲存的路徑在本地磁碟E中,所以後臺直接從本地獲取了資原始檔。傳入伺服器胡,找不到該檔案,估計是IP地址無法獲取到,只有對應的檔案路徑,基於此,想設計出從伺服器裡讀取檔案資訊,但是並沒有成功。後來發現localhost與127.0.0.1是一致的,就想起了用伺服器IP地址代替localhost完成讀取操作,但本質仍然是前臺介面的讀取。

相關推薦

java獲取當前伺服器Ip地址方法

1、tomcat是一款免費的開源Web伺服器,如果部署在本地,那麼對應的那麼為localhost,對應地址為127.0.0.1。 例子:可以通過http://localhost:8080/專案root值訪問,也可以通過http://127.0.0.1/專案root值訪問。

獲取當前伺服器ip地址

獲取當前伺服器ip地址,或獲取指定主機名的ip地址 public static String getServer(){ try { //獲取本地ip地址 InetAddress address = InetAddress

Java獲取本地伺服器Ip方法

@SuppressWarnings("rawtypes")private static String getHostIp() {Enumeration allNetInterfaces = null;try {allNetInterfaces = NetworkInterf

java獲取當前日期和時間的方法

一. 獲取當前系統時間和日期並格式化輸出: import Java.util.Date; import java.text.SimpleDateFormat; public class NowSt

獲取客戶端ip地址方法和通過curl在命令列提交post資料到伺服器

獲取客戶端ip地址方法 public String getIpAddress(HttpServletRequest request) {      String ip = request.getHeader("x-forwarded-for");      if(ip ==

java獲取各種上下文路徑的方法小結

取出 resin pri nbsp ont row span user ade 一、獲得都是當前運行文件在服務器上的絕對路徑在servlet裏用:this.getServletContext().getRealPath(); 在struts用:this.getServlet

Java獲取資源文件的方法總結

tco doget 技術 resource images 磁盤 response linux exception 這裏總結3中方法獲取資源文件的 ServletContext Class ClassLoader 文件的位置 1. ServletC

JAVA獲取當前系統時間

arch tac 獲取 -m simple 得到 轉化 sel stack 一. 獲取當前系統時間和日期並格式化輸出: import java.util.Date;import java.text.SimpleDateFormat; public class NowStri

html - 黑科技-2(獲取當前IP地址

就會 script 輸入 實現 utf-8 取ip 當前 http 獲取ip 有時候我們想要獲取ip地址,這時候我來用兩行代碼實現這個功能。 首先我們需要引入一個js,<script src="http://pv.sohu.com/cityjson?ie=utf-8"

shell腳本獲取當前所在目錄地址

code 地址 color 腳本 AS pan 當前 clas 所在 shell腳本中獲取當前所在目錄如下 #!/bin/bash work_path=$(dirname $0) cd ${work_path} work_path=$(pwd) cd

shell獲取本機ip地址

align 本機ip www. .cn logs res font 地址 獲取本機ip 方法一: /sbin/ifconfig -a|grep inet|grep -v 127.0.0.1|grep -v inet6|awk ‘{print $2}‘|tr -d "addr

在ASP.NET Core 2.x獲取客戶端IP地址

一、前言 大家也知道服務端請求時我們獲取的IP地址是包含在請求頭中,因此這也大大便利了IP的獲取。 在ASP.NET中,可以通過以下方式獲取客戶端的IP地址。 HttpContext.Current.Request.ServerVariables["HTTP_X_FORWARDED_FOR"]

JAVA獲取當前時間及格式轉換

以前我們開發過程中都是前端將時間傳給後端,後端將sql語句放入資料庫中執行,其中的時間格式也會由資料庫從2018-10-04T09:04:35.844Z預設轉換為2018-10-04 09:04:35,但當我們將SQL語句使用 StringBuilder 拼接後,其中的時間格式就會轉換為

Java獲取當前時間戳

java使用new Date()和System.currentTimeMillis()獲取當前時間戳 在開發過程中,通常很多人都習慣使用new Date()來獲取當前時間,使用起來也比較方便,同時還可以獲取與當前時間有關的各方面資訊,例如獲取小時,分鐘等等,而且還可以格式化輸出,包含的資

Java獲取當前系統年份

方法一: public static String getCurrentYear(){ SimpleDateFormat sdf = new SimpleDateFormat("yyyy"); Date date = new Date(); retur

在ASP.NET Core獲取客戶端IP地址

原文: 在ASP.NET Core中獲取客戶端IP地址 隨著ASP.NET的發展,有不同的方式從請求中訪問客戶端IP地址。WebForms和MVC Web應用程式只是訪問當前HTTP上下文的請求。   var ip = HttpContext.Current.Request.UserHo

java獲取時間的幾種方法

1. 通過Date類來獲取當前時間 Date day=new Date(); SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:

nodejs獲取內網ip地址

今天同事有個需求,希望用nodejs裡的web伺服器的對應的站點可以支援內網訪問,後來發現修改express裡的hostname屬性為自己的內網ip就可以了。但是問題是,我們的機器都是自動獲取內網ip,那麼這次寫死的hostname下次基本上就不能用了,於是我們想到了在no

java獲取當前系統時間,日期並格式化輸出

 一. 獲取當前系統時間和日期並格式化輸出: import java.util.Date; import java.text.SimpleDateFormat; public class NowString {    public static void main(String[] args) {     

socket獲取本機IP地址方法

    獲取計算機的名稱和IP地址可以通過呼叫winsock裡面的函式完成,下面上是用到的函式:1.WSAStartup(),此函式在應用程式中初始化windows sockets DLL,這個函式呼叫成功後,才可以呼叫其他的api函式。 2.WSACleanup()函式,