相关文章推荐
爱旅游的木瓜  ·  js 拦截http请求 ...·  5 天前    · 
深情的炒粉  ·  Android Http请求POST ...·  昨天    · 
坚强的手链  ·  The Internet ...·  1 年前    · 
乐观的哑铃  ·  SQL Server 2012 ...·  1 年前    · 
卖萌的眼镜  ·  Use SSH key ...·  1 年前    · 

java创建xml格式报文

Java可以使用多种方法创建XML格式的报文, 其中一种常用的方法是使用DOM(Document Object Model) API, 它可以通过对XML文档树的操作来生成XML报文.

以下是一个示例代码:

import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import javax.xml.transform.Transformer;
import javax.xml.transform.TransformerFactory;
import javax.xml.transform.dom.DOMSource;
import javax.xml.transform.stream.StreamResult;
import org.w3c.dom.Document;
import org.w3c.dom.Element;
public class CreateXML {
   public static void main(String[] args) {
      try {
         DocumentBuilderFactory dbFactory =
         DocumentBuilderFactory.newInstance();
         DocumentBuilder dBuilder =
         dbFactory.newDocumentBuilder();
         Document doc = dBuilder.newDocument();
         // root element
         Element rootElement = doc.createElement("company");
         doc.appendChild(rootElement);
         // staff element
         Element staff = doc.createElement("Staff");
         rootElement.appendChild(staff);
         // set attribute to staff element
         staff.setAttribute("id", "1");
         // shorten way
         // staff.setAttribute("id", "1");
         // firstname element
         Element firstname = doc.createElement("firstname");
         firstname.appendChild(doc.createTextNode("yong"));
         staff.appendChild(firstname);
         // lastname element
         Element lastname = doc.createElement("lastname");
         lastname.appendChild(doc.createTextNode("mook kim"));
         staff.appendChild(lastname);
         // nickname element
         Element nickname = doc.createElement("nickname");
         nickname.appendChild(doc.createTextNode("mkyong"));
         staff.appendChild(nickname);
         // salary element
         Element salary = doc.createElement("salary");
         salary.appendChild(doc.createTextNode("100000"));
         staff.appendChild(salary);
         // write the content into xml file
         TransformerFactory transformerFactory =
         TransformerFactory.newInstance();
         Transformer transformer =
         transformerFactory.newTransformer();
         DOMSource source = new DOMSource(doc);
         StreamResult result =
         new StreamResult(new File("C:\\file.xml"));
         transformer.transform(source, result);
         // Output to console for testing
         StreamResult consoleResult =
         new StreamResult(System.out);
         transformer.transform(source, consoleResult);
      } catch (Exception e) {
         e.printStackTrace();

此代码利用了 Java 的 javax.xml.parsersjavax.xml.transform 包,通过 DocumentBuilderFactory 和 DocumentBuilder 创建一个新的文档,并使用 Transformer 将其转换为 XML 文件。

  •