如何在spring boot中将set< bookdto>转换为set< book>

zphenhs4  于 2021-07-15  发布在  Java
关注(0)|答案(1)|浏览(339)

我怎样才能做到这一点?或者我应该直接使用book模型而不是bookdto来处理这些事情?最佳做法是什么?

gzjq41n4

gzjq41n41#

春靴有豆 com.fasterxml.jackson.databind.ObjectMapper 你可以直接注射。最好通过组件构造函数。或者只是举个例子。
之后有两种方法。您可以Map整个流:

Set<Book> books = bookDtoSet.stream().map(i -> objectMapper.convertValue(i, Book.class)).collect(Collectors.toSet());

或者使用这种方法:

Set<Book> books = objectMapper.convertValue(bookDtoSet, new TypeReference<Set<Book>>() { });

只要字段的名称和类型相似,这两种方法都可以使用。

相关问题