modelmapper-jooq和处理' null'领域

时间:2015-04-22 17:43:03

标签: java jooq modelmapper

我使用modelmapper-jooq将jOOQ记录映射到自定义pojos。我们假设我有像

这样的表格
  | name | second_name | surname
----------------------------
1 | Mary | Jane        | McLeod
----------------------------
2 | John | Henry       | Newman
----------------------------
3 | Paul |             | Signac
----------------------------
4 | Anna |             | Pavlova

所以second_name可以是null。我的人POJO看起来像:

public class Person {
    private String name;
    private String secondName;
    private String surname;
    // assume getters and setters
}

当我将Result<Record>映射到Collection<Person>时,此集合中的每个元素都具有等于null的secondName。当我只映射前两行时,一切正常。如何正确处理它,所以只有当数据库中的相应字段是null时,secondName字段才是null?我已经检查过Record实例中的字段是否具有正确的值。我以这种方式配置modelmapper:

ModelMapper modelMapper = new ModelMapper();
modelMapper.getConfiguration().addValueReader(new RecordValueReader());
modelMapper.getConfiguration().setSourceNameTokenizer(NameTokenizers.UNDERSCORE);    

我也正在进行映射:

//...
private final Type collectionPersonType = new TypeToken<Collection<Person>>() {}.getType();
//...
Result<Record> result = query.fetch();
return modelMapper.map(result, collectionPersonType);

0 个答案:

没有答案