自动编号的唯一字段

时间:2014-01-15 18:07:55

标签: java

你有任何想法如何在java中生成自动编号?我需要将它用于访客ID。每次添加新访客时,每位访客都有一个唯一的ID。非常感谢帮助

非常感谢

3 个答案:

答案 0 :(得分:2)

计数器

您可以增加ID并将其视为计数器

UUID

您还可以使用UUID.randomUUID()

生成唯一字符串
  

静态工厂检索类型4(伪随机生成的)UUID。 UUID是使用加密强伪随机数生成器生成的。

UUID号码是唯一的,在RFC 4122

中有所描述

示例用法

String id = UUID.randomUUID().toString()

JPA

对于JPA实体,只需使用@GeneratedValue

@Entity
public class MyEntity {
    @Id 
    @GeneratedValue(strategy=GenerationType.AUTO) 
    long id;

}

答案 1 :(得分:1)

import java.util.UUID;

公共类GenerateUUID {

public static final void main(String... aArgs){
//generate random UUIDs
    UUID idOne = UUID.randomUUID();
    UUID idTwo = UUID.randomUUID();
    log("UUID One: " + idOne);
    log("UUID Two: " + idTwo);
}

private static void log(Object aObject){
    System.out.println( String.valueOf(aObject) );
}

}

取自:http://www.javapractices.com/topic/TopicAction.do?Id=56

答案 2 :(得分:0)

public class AutoNumber {
    private int counter = 0;
    public int getNumber() {
        int tmp = counter;
        counter++;
        return tmp;
    }
}