Я меньше знаком с фронтендом и только новичок в бэкэнде. Я создаю веб-страницу с помощью сервлетов, которые считывают данные человека из базы данных и отображают их на странице в виде списка. Каждая строка списка состоит из кнопки, с которой можно связаться. При нажатии на кнопку человеку, данные которого были выбраны, отправляется сообщение. Мой вопрос: как создать уникальный идентификатор, нажав кнопку, чтобы сгенерировать идентификатор сообщения в таблице сообщений базы данных, ожидая ответа от выбранного человека?
Создание уникального идентификатора в классе Java
Ответы (2)
Все достойные базы данных позволяют генерировать уникальные идентификаторы. Распространенным способом является использование последовательностей, но он может быть даже проще, PostgreSQL, например, предоставляет типы SERIAL и BIGSERIAL, которые автоматически создают новый идентификатор для каждой вставленной строки.
Короче говоря: если вам нужен только другой идентификатор для каждой строки, используйте эквивалент SERIAL, предоставленный вашей базой данных, а если вам нужен больший контроль, напрямую используйте SEQUENCE (или его эквивалент).
Использовать генератор UUID
Начиная с Java 5, класс UUID предоставляет простые средства для генерации уникальных идентификаторов. Идентификаторы, сгенерированные UUID, на самом деле являются универсально уникальными идентификаторами. Пример
import java.util.UUID;
public class 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) );
}
}
Example run:
>java -cp . GenerateUUID
UUID One: 067e6162-3b6f-4ae2-a171-2470b63dff00
UUID Two: 54947df8-0e9e-4471-a2f9-9af509fb5889
См. Ссылку: http://www.javapractices.com/topic/TopicAction.do?Id=56
Я надеюсь, это поможет.