Как я устанавливаю значение по умолчанию в поле Hibernate?
Если вам нужно реальное значение по умолчанию в базе данных, используйте columnDefinition
:
@Column(name = "myColumn", nullable = false, columnDefinition = "int default 100")
Обратите внимание, что строка в columnDefinition
зависит от базы данных. Также, если вы выберете этот вариант, вам придется использовать dynamic-insert
, так что Hibernate
не будет включать колонки с null
значениями при вставке. В остальном разговоры о дефолте неуместны.
Но если вам нужно не значение базы данных по умолчанию, а просто значение по умолчанию в коде Java, просто инициализируйте переменную вот так - private Integer myColumn = 100;
как насчет простой установки значения по умолчанию для поля?
private String _foo = "default";
//property here
public String Foo
если они передают значение, оно будет перезаписано, в противном случае у вас будет значение по умолчанию.
Одним из решений является проверка геттером, не является ли значение, с которым вы работаете, null (или каким бы ни было его неинициализированное состояние), и если оно равно этому, просто возвращайте значение по умолчанию:
public String getStringValue(){
return (this.stringValue == null) ? "Default" : stringValue;
}