используя hibernate 5, как создать таблицу с ROW во время первого выполнения? - PullRequest
0 голосов
/ 13 апреля 2019

Я хочу вставить строку в таблицу, как во время создания таблицы, но Hibernate 5 успешно создает таблицу, но не вставляет заданную мной строку по умолчанию, как показано в примере ниже,

я уже пробовал ниже код,

@Entity
public class FTPDomain {
@Id
private Long id=(long)1;

private String transferCroneTime="0 0 0 29 2 ?";

private String cleanCroneTime="0 0 0 29 2 ?";

//Setters & Getters
}

и я тоже попробовал,

 @PrePersist
    public void prePersist() {
        if(id == null) id = (long)1;
        if(transferCroneTime == null) transferCroneTime ="0 0 0 29 2 ?";
        if(cleanCroneTime == null) cleanCroneTime = "0 0 0 29 2 ?"
    }

Я ожидаю, когда FTPDomain.java скомпилирует и выполнит первый раз, создав таблицу с ROW, где id = 1, TransferCroneTime = 0 0 0 29 2? и cleanCroneTime = 0 0 0 29 2? в таблице.

Спасибо ...

1 Ответ

0 голосов
/ 14 апреля 2019

@ PrePersist и @PreUpdate - это прослушиватель событий JPA, которые предназначены для изменения состояний объекта до его сохранения или обновления, как уже упоминалось в комментариях.Для правильного использования этих прослушивателей событий см. Следующие примеры.

@PrePersist
public void prePersist() {
   creationDate = Localdatetime.now();
   updatedDate = Localdatetime.now();
} 

@PreUpdate
public void preUpdate() {
   updatedDate = Localdatetime.now();
} 

Если вы хотите предварительно заполнить данные в только что созданной схеме, вам необходимо использовать механизмы, описанные в этой статье https://thoughts -on-java.org / standardized-schema-generation-data-loading-jpa-2-1 / , посредством чего вы настраиваете его в своем файле persistence.xml с помощью параметра javax.persistence.sql-load-script-source , который указывает на сценарий sql, который загружает данные через операторы вставки в вашу базу данных.

Существуют также свойства, специфичные для режима гибернации, которые обеспечивают те же функции, что описаны в документации https://docs.jboss.org/hibernate/orm/5.1/userguide/html_single/Hibernate_User_Guide.html#_importing_script_files, но я бы порекомендовал использовать специфичные для JPA.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...