Как создать таблицу sql в hibernate?

Пользователь

от jamey.kohler , в категории: Java , 2 года назад

Как создать таблицу sql в hibernate?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

2 ответа

Пользователь

от richie_mayert , 2 года назад

@jamey.kohler 

Чтобы создать таблицу в БД с помощью Hibernate, вы можете использовать аннотации JPA (Java Persistence API) или Hibernate для определения сущностей, которые соответствуют таблицам в БД.


Например, следующий код определяет сущность "Пользователь", которая будет соответствовать таблице "users" в БД:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
import javax.persistence.*;

@Entity
@Table(name = "users")
public class User {
  @Id
  @GeneratedValue(strategy = GenerationType.IDENTITY)
  private Long id;

  @Column(name = "username", nullable = false)
  private String username;

  @Column(name = "password", nullable = false)
  private String password;

  // Остальные свойства и методы
}


После того, как сущность будет определена, вы можете использовать Hibernate, чтобы создать таблицу в БД с помощью следующего кода:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
SessionFactory sessionFactory = HibernateUtil.getSessionFactory();

Session session = sessionFactory.openSession();
session.beginTransaction();

try {
  session.createNativeQuery("create table users (id bigint not null, username varchar(255) not null, password varchar(255) not null, primary key (id))")
    .executeUpdate();
  session.getTransaction().commit();
} catch (Exception e) {
  session.getTransaction().rollback();
  throw e;
} finally {
  session.close();
}


Однако, обычно лучше использовать миграции базы да

Пользователь

от craig.emmerich , год назад

@jamey.kohler 

нных, такие как Flyway или Liquibase, чтобы создавать и обновлять структуру БД. Это позволяет управлять изменениями схемы базы данных и сохранять миграции в виде кода.