我有一个名为CommonConfig的配置类,到目前为止它工作得很好…
@Data
@Component
@ConfigurationProperties(prefix = “my")
public class CommonConfig {
private String foo;
private String bar;
private SubA subA;
@Data
public static class SubA {
private String baz;
private SubB subB;
@Data
public static class SubB {
private String qux;
}
}
}
以及与之配套的Yaml属性文件:
my.foo: a
my.bar: b
my.sub-a.baz: c
my.sub-a.sub-b.qux: d
我的问题开始于当我想把一个映射到子B中时:
my:
foo: a
bar: b
sub-a:
baz: c
sub-b:
qux: d
map:
number-one: 1
number-two: 2
number-three: 3
我尝试在SubB类中添加一个简单的映射声明:
...
@Data
public static class SubB {
private String qux;
private Map<String, Integer> map = new HashMap<>();
}
当我运行这个时,所有其他属性都在配置中,但映射是空的。我还尝试不初始化映射,但它保持为空。
我的SpringBootApplication类以前只使用了一个注释就可以很好地工作。基于其他一些StackOverflow问题,我尝试添加EnableConfigurationProperties,但没有什么不同。
application.yml
会自动加载。如果文件名是其他名称,Spring不会自动加载。@Property tySource
从SprintBoot 2.1开始不适用于YAMLspring.config.name
和spring.config.location
这个例子确实很好。我特别的问题是一个配置文件没有被读取。
我有以下DTO和域对象。我正在使用Mapstruct将域对象复制到DTO对象。 使用下面的映射器将域映射到DTO。我不想将电话属性从域映射到DTO。怎么做?我尝试在mapping ignore中提供嵌套目标属性,但它给出了错误:
这是我的DTO: 这是我的实体: 我想配置我的ModelMapper将Tag#id映射到TagVolumeDTO#idTag。这可能吗?
以下结构: . 据我所知,ObjectId的概念是,MongoDB文档中只能有一个ObjectId(\u id),它必须位于文档的根级别。但当通过Spring Boot 1.5.14插入数据时,我得到以下结构: 我的问题是:这是Spring data-mongo中的预期行为吗?我预计会有以下结构: 如果我用@Field注释位置ID 然后按预期保存文档,但使用repository方法进行查询 不会给
问题内容: 假设我正在调用一个API,该API用产品的以下JSON响应: 我可以使用Jackson标注来映射产品ID和名称: 然后使用fromJson方法创建产品: 但是现在我试图弄清楚如何获取品牌名称,这是一个嵌套属性。我希望这样的事情会起作用: 但是,当然没有。有没有一种简单的方法可以使用注释来完成我想要的工作? 我尝试解析的实际JSON响应非常复杂,即使我只需要一个字段,我也不必为每个子节点
但当然没有。有没有一个简单的方法来完成我想要的使用注释? 我试图解析的实际JSON响应非常复杂,我不想为每个子节点创建一个完整的新类,即使我只需要一个字段。
问题内容: 假设我正在调用一个API,该API以产品的以下JSON响应: 我可以使用Jackson标注来映射产品ID和名称: 然后使用fromJson方法创建产品: 但是,现在我试图弄清楚如何获取品牌名称,这是一个嵌套属性。我希望这样的事情会起作用: 但是,当然没有。有没有一种简单的方法可以使用注释来完成我想要的工作? 我尝试解析的实际JSON响应非常复杂,即使我只需要一个字段,我也不必为每个子节