⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 fibonaccidomclient.java

📁 随书的代码
💻 JAVA
字号:
import java.net.*;import java.io.*;import org.w3c.dom.*;import org.apache.xerces.dom.*;import org.apache.xerces.parsers.*;import org.apache.xml.serialize.*;import org.xml.sax.InputSource; public class FibonacciDOMClient {  public final static String DEFAULT_SERVER    = "http://www.elharo.com/fibonacci/XML-RPC";      public static void main(String[] args) {          if (args.length <= 0) {      System.out.println(       "Usage: java FibonacciDOMClient number url"      );      return;    }        String server = DEFAULT_SERVER;    if (args.length >= 2) server = args[1];          try {              // Build the request document      DOMImplementation impl        = DOMImplementationImpl.getDOMImplementation();      Document request        = impl.createDocument(null, "methodCall", null);      Element methodCall = request.getDocumentElement();             Element methodName = request.createElement("methodName");      Text text = request.createTextNode("calculateFibonacci");      methodName.appendChild(text);      methodCall.appendChild(methodName);            Element params = request.createElement("params");      methodCall.appendChild(params);            Element param = request.createElement("param");      params.appendChild(param);            Element value = request.createElement("value");      param.appendChild(value);            // Had to break the naming convention here because of a       // conflict with the Java keyword int      Element intElement = request.createElement("int");      Text index = request.createTextNode(args[0]);      intElement.appendChild(index);      value.appendChild(intElement);              // Transmit the request document      URL u = new URL(server);      URLConnection uc = u.openConnection();      HttpURLConnection connection = (HttpURLConnection) uc;      connection.setDoOutput(true);      connection.setDoInput(true);       connection.setRequestMethod("POST");      OutputStream out = connection.getOutputStream();            OutputFormat fmt = new OutputFormat(request);      XMLSerializer serializer = new XMLSerializer(out, fmt);      serializer.serialize(request);            out.flush();      out.close();              // Read the response      DOMParser parser = new DOMParser();      InputStream in = connection.getInputStream();      InputSource source = new InputSource(in);      parser.parse(source);      in.close();      connection.disconnect();            Document doc = parser.getDocument();      NodeList doubles = doc.getElementsByTagName("double");      Node datum = doubles.item(0);      Text result = (Text) datum.getFirstChild();      System.out.println(result.getNodeValue());    }    catch (Exception e) {      System.err.println(e);     }    } }

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -