java - jackson 序列化 csv 属性顺序

标签 java csv serialization jackson fasterxml

我们有一个包含 350 多列的表格。生成了 pojo 类并且 getters 顺序被弄乱了。尝试使用 jackson 的 csvmapper,但它会根据 getter 顺序生成 csv。由于列太多,@JsonPropertyOrder 也不可行。我们在 xml 中维护列排序,并可以在运行时生成字段顺序数组。我们可以在运行时重写以提供用于属性排序的字段名数组吗?我们可以使用注释内省(introspection)器进行自定义吗?

最佳答案

您要查找的称为 MappingFeature。您需要禁用属性的字母数字排序,这是默认启用的:

CsvMapper mapper = new CsvMapper();
mapper.disable(MapperFeature.SORT_PROPERTIES_ALPHABETICALLY);

您可以在这里找到更多相关信息:Add a feature in CsvSchema to allow definition of ordering #42

关于java - jackson 序列化 csv 属性顺序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36936943/

相关文章:

powershell - 在 Azure datalake 中附加 csv 文件

powershell - 使用 Powershell 创建/填充 csv 文件

c# - Sitecore 使用 Git autocrlf 序列化项目

c# - 您如何使用自定义真值和假值从 Xml 中反序列化 boolean 值?

java - 无法在账单程序中打印报表

java - 是否有任何开源 Java 反射实用程序或 jar?

java - 在libgdx中绘制大背景

python - 如何将 .csv 文件中的数据传输到 Django 中的 sqlite 数据库中?

java - 如何通过xstream为对象别名?

java - 理解大端、小端(再次)