动态更新索引不起作用(Spring Data Elasticsearch)

IT小君   2022-09-15T08:30:03

我有一个模型是:

@Document(indexName = "index", type = "logs")
public class Log {

    @Id
    private String id;

    private String test_no;
    private String entire_log;
    private String method;
    private String timestamp;
    private String thread_name;
    private String level;
    private String logger_name;
    private String formatted_message;

    // CONSTRUCTORS, GETTERS AND SETTERS...
}

我有一个applicationContext.xml包含 bean 的文件,用于保存动态索引的值。该文件的位置在src/main/resources目录内,与application.properties文件的位置相同。豆是:

<bean id="index" class="elastest.loganalyzer.es.client.model.Index">
    <property name="v" value="defaut"></property>
</bean>

其中 Index 类是一个包含参数“v”的简单类:

public class Index {

    String v;

    public Index() {
        this.v = "default";
    }

    public String getV() {
        return v;
    }

    public void setV(String v) {
        this.v = v;
    }

}

我要做的是使上述模型(Log)的索引动态化。我已经通过不同的方式尝试过,但我找不到正确的解决方案:

@Document(indexName = "#{index}", type = "logs")
@Document(indexName = "#{index.v}", type = "logs")
@Document(indexName = "#{index.getV()}", type = "logs")

所以......我怎样才能让它工作?

点击广告,支持我们为你提供更好的服务
评论(0)