我正在使用以下配置运行Spring启动应用程序
@ConfigurationProperties(prefix= "app.sample")
@Component
public class PropGenerator{
private List<String> list;
public List<String> getList() {
return list;
}
public void setList(List<String> list) {
this.list = list;
}
}
我的application.properties
有以下格式配置的300个条目
app.sample.list [0] = VALUE1 。
app.sample.list [299] = value300
当我运行程序时,我收到以下错误
Invalid list index in property path 'list[279]'; nested exception is java.lang.IndexOutOfBoundsException: Index: 279, Size: 251
Caused by: java.lang.IndexOutOfBoundsException: Index: 279, Size: 251
如何手动覆盖列表的大小,以便在list
变量中自动填充所有300个值?我遇到了@InitBinder,但无法让它工作。
答案 0 :(得分:0)
您不应该(ab)使用属性文件作为数据存储。请改用数据库。您can use data.sql
script使用您的值预先填充数据库。
答案 1 :(得分:0)
我们必须在必要时进行自动增长集合,并且曾经存在Spring Boot 1.3.7中更改的限制(请参阅#6436)。根据您当前使用的版本,升级应该修复它。如果没有,请创建一个样本来重现问题并创建问题in the Spring Boot issue tracker