liquibase:每次运行应用程序时执行变更集

时间:2016-04-29 12:40:00

标签: liquibase

我正在使用liquibase在我的Mysql数据库中加载数据,如下所示:

public class Stack {

    private String[] stackArray;
    private int arraySize;
    private int top;

    public Stack(int capacity) {
        arraySize = capacity;
        stackArray = new String[arraySize];
        top = -1;
    }

    public void push(String i) {
        stackArray[++top] = i;
    }

    public String pop() {
        return stackArray[top--];
    }

    public boolean isEmpty() {
        return top == -1;
    }

    public boolean isFull() {
        return top == arraySize - 1;
    }
}

每次运行应用程序时,如何强制liquibase执行此任务(如果site.csv已更改)?我的问题是,当liquibase执行变更集时,它不会再执行它。

1 个答案:

答案 0 :(得分:2)

如果您只想在CSV文件发生变化时运行它,请将runOnChange="true"作为属性添加到changeSet

<changeSet id="42" author="arthur" runOnChange="true">
  <loadUpdateData>
  ...
  </loadUpdateData>
</changeSet>

如果始终想要运行它,请改用runAlways="true"

有关详细信息,请参阅手册: http://www.liquibase.org/documentation/changeset.html