我想将Java Object转换为包含封送的XML数据的String。我找到的方法之一是首先编组一个文件然后使用BufferedReader读取文件以转换为字符串。我觉得这可能不是最有效的方法,因为IO操作执行两次(一次是在封送期间,另一次是在将文件内容转换为String期间)
有人可以建议任何更好的方法吗?
答案 0 :(得分:8)
将一个StringWriter对象作为参数传递给Marshaller的marshal method
答案 1 :(得分:0)
以下是AbacusUtil
的简单代码Account account = N.fill(Account.class);
String xml = N.toXML(account);
N.println(xml); // <account><id>6264304841028291043</id><gui>33acdcbe-fd5b-49</gui><emailAddress>19c1400a-97ae-43</emailAddress><firstName>67922557-8bb4-47</firstName><middleName>7ef242c9-8ddf-48</middleName><lastName>1ec6c731-a3fd-42</lastName><birthDate>1480444055841</birthDate><status>1444930636</status><lastUpdateTime>1480444055841</lastUpdateTime><createTime>1480444055841</createTime></account>
Account account2 = N.fromXML(Account.class, xml);
assertEquals(account, account2);
声明:我是AbacusUtil的开发者。