我有以下数据:
{ long x; long y;}
使用Jackson序列化为JSON后,我得到以下内容:
{ "x": 1, "y": 2 }
但是,我正在寻找这个:
[1, 2]
我怎么能和杰克逊一起做到这一点?
答案 0 :(得分:3)
正如其他人所说,你不能省略JSON对象的密钥,但你可以将POJO序列化为一个数组,如下所示:
@JsonFormat(shape=JsonFormat.Shape.ARRAY)
@JsonPropertyOrder({ "x", "y" }) // important; or 'alphabetic=true'
public class POJO {
public int x, y;
}
然后将序列化为:
[1,2]
甚至类似地从JSON Array反序列化。
答案 1 :(得分:2)
不,你违反了JSON格式,这种格式基本上是键值格式。
但是你可以把它序列化为:
public void imageSlider(){
HashMap<String,Integer> file_maps = new HashMap<String, Integer>();
file_maps.put("Palava Titans - Lodha Palava, Dombivali",R.drawable.img1);
file_maps.put("Dribble Football -Imax, Wadala",R.drawable.img2);
file_maps.put("Astro Park - Atria, Worli",R.drawable.img3);
file_maps.put("TigerPlay - Citimall, Andheri w", R.drawable.img4);
file_maps.put("DSF - Ryan International, Andheri", R.drawable.img5);
file_maps.put("The Arena, Sakinaka", R.drawable.img6);
file_maps.put("Astro Park - Smash, Lower Parel", R.drawable.img7);
file_maps.put("DSF - Rcity, Ghatkopar", R.drawable.img8);
file_maps.put("Father Agnel - Vashi", R.drawable.img9);
file_maps.put("Footbrawl - Milan Subway", R.drawable.img10);
for(String name : file_maps.keySet()){
TextSliderView textSliderView = new TextSliderView(this);
// initialize a SliderLayout
textSliderView
.description(name)
.image(file_maps.get(name))
.setScaleType(BaseSliderView.ScaleType.Fit);
//add your extra information
textSliderView.getBundle()
.putString("extra",name);
mDemoSlider.addSlider(textSliderView);
}
mDemoSlider.setPresetTransformer(SliderLayout.Transformer.Accordion);
mDemoSlider.setPresetIndicator(SliderLayout.PresetIndicators.Right_Bottom);
mDemoSlider.setCustomAnimation(new DescriptionAnimation());
mDemoSlider.setDuration(5000);
}
只需在你的dto中列出一个列表。
答案 2 :(得分:0)
{ 1, 2}
不是有效的JSON。你在寻找[1,2]吗?它的列表或数组。您可以序列化
List<Long>
到它。