返回的Json响应是否保留List的插入顺序?

时间:2019-07-19 03:38:36

标签: json jackson spring-data-jpa

返回包含数组列表属性的实体时,作为通过REST控制器通过GET操作的Json响应,返回的Json响应是否会保留该数组列表的插入顺序?

使用spring-data-jpa从Postgresql数据库中获取实体。

@Entity
public class MyEntity implements Serializable {

    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private long id;

    private final List<SomeObj> myList = new ArrayList<>();

}

如果是套装怎么办?我是否需要使用SortedSet来确保订单保留在返回的响应中。

1 个答案:

答案 0 :(得分:1)

Jackson用于集合序列化使用com.fasterxml.jackson.databind.ser.std.CollectionSerializer类或其他类似的方法,该类使用给定集合返回的Iterator遍历它。因此,默认情况下,如果集合保留它,它会保留插入顺序。如果您将JacksonHibernate一起使用,请不要忘记注册HibernateXModule模块。