Java에서 호스트 이름 가져오기

Muhammad Zeeshan 2023년10월12일
  1. InetAddress를 사용하여 Java에서 HostName 가져오기
  2. InetAddress 클래스를 사용하여 Java에서 HostName 가져오기 시연
Java에서 호스트 이름 가져오기

이 자습서에서는 Java API를 사용하여 IP 주소와 호스트 이름을 얻는 방법을 살펴보겠습니다.

InetAddress를 사용하여 Java에서 HostName 가져오기

패키지 java.net에는 현재 시스템의 IP 주소와 호스트 이름을 처리하는 InetAddress 클래스가 포함되어 있습니다.

동일한 클래스의 getLocalHost() 함수로 시스템의 IP 주소를 수집하여 java.net 패키지의 InetAddress 클래스의 getHostName()을 사용하여 Windows 컴퓨터의 시스템 이름을 얻을 수 있습니다.

보안 관리자가 localhost의 주소 가져오기를 승인하지 않으면 getHostName()은 IP 주소의 텍스트 표현을 전달합니다.

InetAddress 클래스의 getLocalHost()getByName(문자열 호스트) 메서드는 각각 로컬 및 원격 호스트를 처리합니다.

통사론:

InetAddress inetadd = InetAddress.getLocalHost();

이 함수는 Java 프로그램이 실행 중인 inetadd 로컬 서버에 대한 InetAddress 인스턴스를 생성합니다. 결과적으로 localhost의 주소가 반환됩니다.

이것은 시스템에서 호스트 이름을 검색하여 InetAddress로 변환하여 수행됩니다.

InetAddress 클래스를 사용하여 Java에서 HostName 가져오기 시연

먼저 다음 라이브러리를 가져옵니다.

java.net.InetAddress

간단한 예를 사용하여 Java에서 호스트 이름을 검색하는 방법을 보여줍니다.

InetAddress inetadd = InetAddress.getLocalHost();

InetAddress 메소드를 사용하여 Java 프로그램이 작동하는 inetadd라는 로컬 서버에 대한 InetAddress 인스턴스를 생성합니다.

String name = inetadd.getHostName();

getHostName() 메소드를 사용하여 호스트 이름을 가져와 name이라는 문자열 유형 변수에 저장합니다.

String address = inetadd.getHostAddress();

그런 다음 getHostAddress() 메서드를 사용하여 호스트 주소를 가져와 address라는 문자열 유형 변수에 저장합니다. 이것이 로컬 또는 사이트 호스트 이름을 주소로 확인할 수 없는 경우 UnknownHostException이 발생합니다.

소스 코드:

import java.net.InetAddress;
import java.net.UnknownHostException;
public class HostnameExample {
  public static void main(String[] args) {
    try {
      InetAddress inetadd = InetAddress.getLocalHost();
      String name = inetadd.getHostName();
      String address = inetadd.getHostAddress();
      System.out.println("HostName is : " + name);
      System.out.println("Host Address is: " + address);
    } catch (UnknownHostException u) {
    }
  }
}

출력:

$javac HostnameExample.java
$java -Xmx128M -Xms16M HostnameExample
HostName is : f97aedb6192a
Host Address is: 127.0.0.2
Muhammad Zeeshan avatar Muhammad Zeeshan avatar

I have been working as a Flutter app developer for a year now. Firebase and SQLite have been crucial in the development of my android apps. I have experience with C#, Windows Form Based C#, C, Java, PHP on WampServer, and HTML/CSS on MYSQL, and I have authored articles on their theory and issue solving. I'm a senior in an undergraduate program for a bachelor's degree in Information Technology.

LinkedIn