java - 液体碱 : Load data with dates depending on today (plus one day)

标签 java spring hibernate liquibase

我正在使用 liquibase 来管理我的项目,并在启动时使用如下对象初始化我的数据库。

我希望能够根据实际日期来初始化它们,例如明天上午 9 点。怎么做?

added_entity_Booking.xml:

<databaseChangeLog ...>
    <changeSet id="20191214170407-1" author="jhipster">
        <createTable tableName="booking">
            <column name="id" type="bigint" autoIncrement="${autoIncrement}">
                <constraints primaryKey="true" nullable="false"/>
            </column>
            <column name="date" type="datetime">
                <constraints nullable="true" />
            </column>
            ...
        </createTable>
        <dropDefaultValue tableName="booking" columnName="date" columnDataType="datetime"/>
    </changeSet>

    <changeSet id="20191214170407-1-data" author="jhipster" context="faker">
        <loadData
                  file="config/liquibase/fake-data/booking.csv"
                  separator=";"
                  tableName="booking">
            <column name="id" type="numeric"/>
            <column name="date" type="datetime"/>
            ...
        </loadData>
    </changeSet>
</databaseChangeLog>

预订.csv:

id;date;...
1;2019-12-15T01:54:50;...
2;2019-12-14T14:55:28;...
3;2019-12-15T02:06:37;...
4;2019-12-14T15:30:05;...

最佳答案

根据liquibase docs您可以根据当前日期计算日期 - 以下是 postgresql 的示例:

<column name="date" ... defaultValueComputed="now() + interval '60 days'"/>

关于java - 液体碱 : Load data with dates depending on today (plus one day),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59576024/

相关文章:

java - 如何使用 Spring boot 返回图像

hibernate - SQLDelete 注释中忽略物理命名策略

java - 有没有办法将数字(在我的例子中是 double )转换为java中的复数?

java - Maven 更新 POM 中的依赖项

java - 如何在 Spring 框架中将多个输入存储到数组中

java - H2 数据库模式创建检查

hibernate - JPA 更新多行和表

java - Hibernate,如果不使用beginTransaction会发生什么?

java - 从用户绘制的图像中裁剪掉空白

使用 XPath 进行 Java XML 解析?