2
나는 아약스 통화에서 주문 문자열의 목록을 반환해야스프링 MVC 잭슨 주문
내 DTO는이 문자열 값의 목록입니다 크기, 예를 들어 속성이있다 : 36,38,40/46, 46 , S, XS, M, L
내 비교 자 및 정렬 알고리즘이 잘 작동하면 크기 목록이 json 형식으로 변환 될 때까지 정렬됩니다. 완전히 다른 순서를 찾았습니다.
@ResponseBody
@RequestMapping(value = PRODUCT_CODE_PATH_VARIABLE_PATTERN + "/crossell", method = RequestMethod.GET)
public ProductData cosselProductDetail(@PathVariable("productCode") final String productCode,
final HttpServletResponse response) throws CMSItemNotFoundException,
UnsupportedEncodingException
{
Collections.sort(sortedSizes,mycomparator);
productData.setSizes(sortedSizes);
return productData;
}
스프링 설정은 어떤 일이 추가되거나 수정 된 기본 구성입니다. SORT_PROPERTIES_ALPHABETICALLY, 속성이 아닌 값을 주문 :
<!-- activates annotation driven binding -->
<mvc:annotation-driven ignoreDefaultModelOnRedirect="true" validator="validator">
<mvc:message-converters>
<bean class="org.springframework.http.converter.ResourceHttpMessageConverter"/>
<bean class="org.springframework.http.converter.xml.Jaxb2RootElementHttpMessageConverter"/>
<bean class="org.springframework.http.converter.json.MappingJacksonHttpMessageConverter" />
</mvc:message-converters>
</mvc:annotation-driven>
은 주위를 검색 한 후, 내가 발견 한 것은 모두 직렬화 키 설정입니다.
감사
'productData.sizes'의 유형은 무엇입니까? – ponomandr
간단한 목록 –
주문이 실제 JSON이 아닌 경우에는 여기에서 자세히 설명하는 강력한 주장이 있습니다. http://stackoverflow.com/questions/4515676/keep-the-order-of-json-keys-during -json-conversion-to-csv/4515863 # 4515863 슬프지만, 기본 구성은 변환 후 순서를 유지할 것으로 예상됩니다. 그래서 물어 보니 용서해주십시오.하지만 그게 당신이 정렬을 잃는 지점이라고 확신합니까? 또한 디버거에서 (디버거에서) 크기 목록의 구체적인 구현이 무엇인지 붙여 넣을 수 있습니까? –