刚刚接手的一个项目, 接到一个对接用户数据的需求, 对方使用的是 xml 格式来传输文件, 特此记下解析该类文件的方法
- public interface XmlResolver<T> {
- XStream builder();
- default T parse(String xml){
- return (T) builder().fromXML(xml);
- }
- default T resolver(String xml){
- return parse(xml);
- }
- }
- // 测试类
- public class TestMain {
- private String name;
- private String address;
- private List<TestPerson> personList;
- public static void main(String[] args) {
- XmlResolver<TestMain> testMainXmlResolver = () -> {
- {
- XStream xStream = new XStream();
- xStream.alias("GetInvoiceResult", TestMain.class);
- xStream.alias("ItemRecord", TestPerson.class);
- return xStream;
- }
- };
- String xml = "<GetInvoiceResult>\n" +
- "<name>string</name>\n" +
- "<address>string</address>\n" +
- "<personList>\n" +
- "<ItemRecord>\n" +
- "<name>string</name>\n" +
- "<age>string</age>\n" +
- "</ItemRecord>\n" +
- "<ItemRecord>\n" +
- "<name>string</name>\n" +
- "<age>string</age>\n" +
- "</ItemRecord>\n" +
- "</personList>\n" +
- "</GetInvoiceResult>\n"
- ;
- TestMain testMain = testMainXmlResolver.parse(xml);
- System.out.println(testMain);
- }
- }
来源: http://www.bubuko.com/infodetail-2563484.html