목차
- 자바 내 컴퓨터 MAC 주소 가져와 출력하기 예제 이전 포스팅 참고 학습
- 자바 length 배열의 총 크기 구하기 예제 이전 포스팅 참고 학습
- 자바 Class, Method 만들기 예제 이전 포스팅 참고 학습
- 자바 MAC 주소 가져와 변수에 저장하기 예제
- 자바 고정된 MAC 주소와 비교 및 인증하여 인증 결과 출력 예제
자바 내 컴퓨터 MAC 주소 가져와 출력하기 예제 이전 포스팅 참고 학습
이전 포스팅의 예제에서는 Java를 사용하여 현재 컴퓨터의 MAC 주소를 가져오는 방법을 설명하였습니다. MAC 주소는 네트워크 인터페이스에 연결된 고유한 식별자로 사용됩니다. 보통 네트워킹 개발 과정에서 상대방의 컴퓨터를 인증하거나 내 MAC 주소를 활용하여 네트워킹 관련 작업을 할 때 사용되는 값입니다. 자바에서 컴퓨터 MAC 주소 가져오는 방법이 궁금하시다면 아래 링크를 확인해주세요.
2023.09.19 - [Java] - [Java] 자바 컴퓨터 MAC 주소 가져와 출력하기 예제(Mac address)
자바 length 배열의 총 크기 구하기 예제 이전 포스팅 참고 학습
이전 포스팅에서는 Java에서 배열의 길이 (크기)를 어떻게 구하는지를 알아보았습니다. 배열의 길이를 알면 반복문이나 배열 조작에 유용하게 활용할 수 있습니다. length 등과 같은 리스트에서 제공중인 메소드를 활용하여 현재 저장된 아이템들의 개수를 확인하여 사용할 수 있습니다. for문으로 알고리즘을 작성하기보다는 이렇게 리스트의 length 메소드를 활용해보세요. 아래는 해당 예제가 포함된 포스팅 링크입니다.
2023.08.15 - [Java] - [Java/Linux] 배열 총 크기 구하기 예제(length, 리스트)
자바 Class, Method 만들기 예제 이전 포스팅 참고 학습
마지막으로 이전 포스팅의 예제에서는 Java에서 클래스와 메서드를 어떻게 만드는지에 대한 간단한 예제를 알아보았습니다. 클래스와 메서드는 Java 프로그래밍에서 핵심적인 요소입니다. 객체 지향언어에서 빠지지 않는 클래스와, 메소드에 대해 궁금하시다면 아래 링크를 참고해주세요.
2023.08.16 - [Java] - [Java/Linux] Class 선언 및 Method 만들기 예제
자바 MAC 주소 가져와 변수에 저장하기 예제
아래는 Java를 사용하여 현재 컴퓨터의 MAC 주소를 가져와 변수에 저장하는 예제입니다. 아래 코드를 사용하면 현재 컴퓨터의 MAC 주소를 변수에 저장할 수 있습니다. 이 코드는 getMacAddress 메서드를 사용하여 MAC 주소를 가져오고, 메인 메서드에서 해당 주소를 출력합니다.
import java.net.InetAddress;
import java.net.NetworkInterface;
import java.net.SocketException;
import java.util.Enumeration;
public class MacAddressExample {
public static void main(String[] args) {
try {
String macAddress = getMacAddress();
if (macAddress != null) {
System.out.println("MAC Address: " + macAddress);
} else {
System.out.println("MAC Address not found.");
}
} catch (Exception e) {
e.printStackTrace();
}
}
public static String getMacAddress() throws SocketException {
Enumeration<NetworkInterface> networkInterfaces = NetworkInterface.getNetworkInterfaces();
while (networkInterfaces.hasMoreElements()) {
NetworkInterface networkInterface = networkInterfaces.nextElement();
byte[] mac = networkInterface.getHardwareAddress();
if (mac != null) {
StringBuilder sb = new StringBuilder();
for (int i = 0; i < mac.length; i++) {
sb.append(String.format("%02X%s", mac[i], (i < mac.length - 1) ? "-" : ""));
}
return sb.toString();
}
}
return null;
}
}
자바 고정된 MAC 주소와 비교 및 인증하여 인증 결과 출력 예제
아래는 Java를 사용하여 고정된 MAC 주소와 현재 컴퓨터의 MAC 주소를 비교하고, 인증 결과를 출력하는 예제입니다. 이렇게 사전에 정의되거나 미리 확정된 MAC 주소를 가지고 컴퓨터에 따라 자바 프로그램이 실행되도록 할 수 있습니다.
import java.net.InetAddress;
import java.net.NetworkInterface;
import java.net.SocketException;
import java.util.Enumeration;
public class MacAddressAuthentication {
public static void main(String[] args) {
// 고정된 MAC 주소 (예: 00-11-22-33-44-55)
String fixedMacAddress = "00-11-22-33-44-55";
try {
String macAddress = getMacAddress();
if (macAddress != null && macAddress.equals(fixedMacAddress)) {
System.out.println("Authentication successful.");
} else {
System.out.println("Authentication failed.");
}
} catch (Exception e) {
e.printStackTrace();
}
}
public static String getMacAddress() throws SocketException {
Enumeration<NetworkInterface> networkInterfaces = NetworkInterface.getNetworkInterfaces();
while (networkInterfaces.hasMoreElements()) {
NetworkInterface networkInterface = networkInterfaces.nextElement();
byte[] mac = networkInterface.getHardwareAddress();
if (mac != null) {
StringBuilder sb = new StringBuilder();
for (int i = 0; i < mac.length; i++) {
sb.append(String.format("%02X%s", mac[i], (i < mac.length - 1) ? "-" : ""));
}
return sb.toString();
}
}
return null;
}
}