我要求Spring Boot应用程序加载一些理想地适合某种迷你电子表格的配置。几乎所有配置都由绑定到@ConfigurationProperties
POJO的YAML属性文件组成,因此:
static class Entry {
private final Terrain terrain; // A simple enumeration
private final int value;
// ... other fields
public Entry(Terrain terrain, int value, ...) { ... }
}
@ConfigurationProperties("section")
@ConstructorBinding
@Validated
class SectionProperties {
private final List<Entry> entries;
public SectionProperties(List<Entry> entries) {
this.entries= List.copyOf(entries);
}
// ... other fields, getters, etc
}
如果YAML被构造为这样的对象序列,则这可以很好地工作:
section:
entries:
- terrain: plains
value: 1
- terrain: forest
value: 2
然而,从这个配置的html" target="_blank">用户/作者的角度来看,如果数据被组织成一个“电子表格”,那就太好了,因为他们将能够在彼此的上下文中看到各种值,而不是上面的大列表(大约有十几个条目)。类似这样的东西:
section:
entries:
- [plains, 1]
- [forest, 2]
这是有效的YAML(据我所知),但配置绑定失败,列表中的每个条目都出现“未绑定属性”错误,即它似乎将条目识别为YAML序列,但无法将YAML序列块(方括号)内的数据绑定到条目。
是否有人试图这样做或做任何类似的事情?有可能吗?
很抱歉,如果这已经在其他地方解决了,我已经搜索了SO和Spring留档,但找不到任何涵盖这个特定情况以及它是否实际可行的东西。
如果您自己实现映射,这应该是可能的:
@Component
@ConfigurationPropertiesBinding
public class EntryConverter implements Converter<List<String>, Entry> {
@Autowired
private ConversionService conversionService;
@Override
public Entry convert(List<String> from) {
String[] data = from.split(",");
return new Entry(data[0],
conversionService.convert(data[1], Integer.class), ...);
}
}
我不确定这是否适用于嵌套在列表中的非标量值,我也不确定它是否适用于List
问题内容: 我有一个App Engine应用程序,我想运行一个查询,该查询根据涉及两个属性的表达式对结果进行排序。到目前为止,我想到的最好的方法是创建一个存储该表达式结果的计算/计算属性。尽管我看到Python中的GAE提供了ComputedProperty,这似乎正是我想要的,但是我找不到Java中的等效项。 如果有帮助,我目前也在使用Objectify。 有任何想法吗? 问题答案: 用@OnS
问题内容: 我一直在使用TwitterBootstrap构建网站,其许多功能都依赖于将内容包装在中,即使它们只是执行Javascript也是如此。我在Bootstrap文档所建议的策略上遇到了问题,因此我试图寻找其他解决方案。 但是后来我尝试完全删除该属性。我一直在使用,并让Javascript处理其余部分。而且有效。 但是有件事告诉我我不应该这样做。对?我的意思是,从技术上讲,它应该是某事的链接
语境 App Engine服务是区域性的。Cloud Datastore虽然具有多区域位置,其中数据在同一位置内的多个区域复制,但尚不清楚当使用其中一个多区域位置时,App Engine service是否也具有多区域可用性。我们理解App Engine在一个区域中使用多个区域来提供高可用性,但需求文档要求设置多区域(主动-主动)App Engine。 使用2个不同的GCP项目在2个不同的地区承载
问题内容: 我有一些生成的CSS,想使用一些CSS可以选择例如 使用和忽略。类似于: 我可以生成更多的类,但想知道CSS是否可行。 问题答案: 您不能使用这样的通配符,但是要获得所需的结果(ID以开头和以结束),可以改用属性starts-with和ends-with选择器,如下所示: 记住,通过链接这样的多个属性选择器(以及类型选择器),您将对所有这些属性选择器进行同一个AND匹配。
我正在尝试使用YamlBeans序列化fxml属性。具体是一个属性。该类有一个私有属性字段和fxml标准getter和setter方法,但序列化发生时信息不会保存到文件中。 入口点: 人物.java YamlSerializer.java 输出文件person.yml:
引入 Maven 依赖 <dependency> <groupId>org.apache.shardingsphere</groupId> <artifactId>shardingsphere-jdbc-core</artifactId> <version>${shardingsphere.version}</version> </dependency> <!-- 使用