태터데스크 관리자

도움말
닫기
적용하기   첫페이지 만들기

태터데스크 메시지

저장하였습니다.

기존에 만들어진 프로그램을 보다가 5b2fecb7ab1149288fd18618220a2ed3 이런식의 난수가 DB 레코드에 들어가있는걸 봤는데 찾아보니 UUID 라는걸 이용해서 만들어진 것 같다. 만드는 코드도 의외로 간단하다.

import java.util.UUID;

public class TestMain {
   
    public static void main(String[] args) {
        for (int i=0;i<10;i++){
            System.out.println(UUID.randomUUID().toString());
//            System.out.println(UUID.randomUUID().toString().replace("-", ""));
        }
    }
}



JDK 1.5 부터 가능한 클래스라고 하는데 UUID클래스를 이용해서 위와같이 호출해주면 된다. 중복이 안된다고 보장은 안되지만 그럴 확률은 거의 없어서 고유값으로 봐도 좋다고 한다.

좀더 자세한 내용은 아래 주소를 참고하자.




GUID 라는 것도 있다는데 테스트로 만들어보니 이건 3f09003c4416c9ac:-71c4dda7:12b79eb6693:-7ffe 와 같이 생겼다. 아래의 코드로 생성했다.

public class TestMain {

    public static void main(String[] args) {
        for (int i=0;i<10;i++){
            System.out.println(new java.rmi.dgc.VMID());
        }
    }
}


참고 주소는




Posted by 인터돌

댓글을 달아 주세요

  1. 김민준 2015.01.06 10:58 신고  댓글주소  수정/삭제  댓글쓰기

    참고 주소 내용 안에 오류가 있네요
    JAVA에서 MAC Address 를 못가져온다는것은 말이 안되는 얘기입니다
    이식성 얘기도 나오는데 아래 코드의 클래스들로 쉽게 Mac Address를 가져올수있습니다

    public static void main(String[] args){
    InetAddress ip;
    try {

    ip = InetAddress.getLocalHost();
    System.out.println("Current IP address : " + ip.getHostAddress());

    NetworkInterface network = NetworkInterface.getByInetAddress(ip);

    byte[] mac = network.getHardwareAddress();

    System.out.print("Current MAC address : ");

    StringBuilder sb = new StringBuilder();
    for (int i = 0; i < mac.length; i++) {
    sb.append(String.format("%02X%s", mac[i], (i < mac.length - 1) ? "-" : ""));
    }
    System.out.println(sb.toString());

    } catch (UnknownHostException e) {

    e.printStackTrace();

    } catch (SocketException e){

    e.printStackTrace();

    }
    }



티스토리 툴바