Изменить структуру таблицы Hibernate по умолчанию

0

Мне было интересно, если я могу изменить или установить значения структуры таблицы, которые hibernate делает, когда я сопоставляю объект с Mysql.

мой вопрос в том, есть ли у меня этот класс сущностей:

@Entity
@Table(name="user_table")
public class User {

@Id
@GeneratedValue(strategy=GenerationType.IDENTITY)
private int id;

@Column(name="name")
@Basic(optional=false)
private String name;


private String adress;

public int getId() {
    return id;
}

public void setId(int id) {
    this.id = id;
}

public String getName() {
    return name;
}

public void setName(String name) {
    this.name = name;
}

public String getAdress() {
    return adress;
}

public void setAdress(String adress) {
    this.adress = adress;
}

}

hibernate по умолчанию создать таблицу с этим, но моя точка зрения заключается в том, что столбец (name) создается с помощью [VARCHAR (255)], colud меняет его, например, на [VARCHAR (50)]

нота:

Я пытаюсь использовать что-то вроде => @Type (type = "varchar (50)")

ИЛИ ЖЕ

@Type (тип = "VARCHAR-50")

но это не сработало !!!

любая помощь?

Теги:
hibernate
orm

1 ответ

0
Лучший ответ

Установка длины shoud делает трюк

@Column(name="name", length = 50)
@Basic(optional=false)
private String name;

По умолчанию длина 255.

  • 0
    Ты прав. это то, что я пытаюсь достичь. Большое спасибо. но это не имеет смысла для меня, что я должен делать это с @ столбца, а не с @ Type !!!!! тип используется для отображения типа правильно! какая разница?
  • 0
    Он говорил, какой тип данных вы хотите хранить в базе данных.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню