Мне нравится заполнять ненулевую строку в генерации схемы liquibase (для postgres DB) значением, сгенерированным собственным методом класса.
Не могу ли я использовать defaultValueComputed
для вызова статического метода класса? например,
<column name="downloadkey" type="VARCHAR(40)" defaultValueComputed="ch.util.HashUtil.randomSha1()">
<constraints nullable="false" unique="true" />
</column>
И класс Java:
package ch.util;
public class HashUtil {
public static String randomSha1() {
...
}
}
Если я попробую это, возникнет исключение:
liquibase.exception.MigrationFailedException: Migration failed for change set ...
Reason: liquibase.exception.DatabaseException: ERROR: improper qualified name (too many dotted names): ch.util.hashutil.randomsha1 [Failed SQL: CREATE TABLE ....]