我有一个DTO会发回一个泛型类型的对象。这是一个例子:
public class ATestDTO<E> implements Serializable {
private E generic;
public E getGeneric() {
return generic;
}
public void setGeneric( E generic ) {
this.generic = generic;
}
}
如果说E是Long,它将输出为String而不是数字。我希望它输出为数字。
ATestDTO<Long> dto = new ATestDTO();
dto.setGeneric(1l);
//Outputs:
{
"generic": "1"
}
//Desired:
{
"generic": 1
}
有趣的是,如果字段是List<E>
,它会在列表中输出数字而不是字符串,所以我知道它是可能的。
尝试修复:
- 我尝试通过传入类来强制转换它,但它仍然输出一个字符串