实现方法:
1、Cat实体类:@Data
@AllArgsConstructor
@NoArgsConstructor
@XStreamAlias(value = "cat")
public class Cat {
@XStreamAlias(value = "name" )
private String name;
@XStreamAlias(value = "age" )
private String age;
}
2、List类@Data
@XStreamAlias("CatList")
public class CatList implements Serializable {
private static final long serialVersionUID = 6108128669507078766L;
@XStreamImplicit(itemFieldName = "cat111")
private List cats;
}
3、DEMO测试public class TestD {
public static void main(String[] args) {
CatList catList = new CatList();
Cat cat1 = new Cat("cat1", "1");
Cat cat2 = new Cat("cat2", "2");
Cat cat3 = new Cat("cat3", null);
Cat cat4 = new Cat("cat4", "4");
ArrayList catLists = new ArrayList<>();
catLists.add(cat1);
catLists.add(cat2);
catLists.add(cat3);
catLists.add(cat4);
catList.setCats(catLists);
XStream xStream = new XStream();
xStream.autodetectAnnotations(true);
String xml = xStream.toXML(catList);
System.out.println(xml);
}
}