Jsp中使用xmlhttp进行数据交互[收藏]

2008-02-23 09:21:09来源:互联网 阅读 ()

新老客户大回馈,云服务器低至5折

1.客户端提交请求
Domain = " test.com"
sXML = "<?xml version=""1.0"" encoding=""gb2312"" ?>" &_
"<Package>" &_
"<Domain>" & Domain & "</Domain>" &_
"</Package>"
Set oD = Server.CreateObject("Microsoft.XMLHTTP")
oD.Open "Post", "http://Server/Domain_Check.jsp", False
oD.Send(sXml)

If oD.Status = 200 Then
Result = oD.responseText
Set o = Server.CreateObject("Microsoft.XMLDOM")
o.LoadXML(Result)

Domain = CInt(o.selectSingleNode("//Result").text)
Response.Write Domain
Set o = Nothing
Set oD = Nothing
End If

2.服务器端解析数据包
<%@ page import="Java.util.*" %>
<%@ page import="java.text.*" %>
<%@ page import="java.io.*" %>
<%@ page import="org.w3c.dom.*" %>
<%@ page import="javax.xml.parsers.*" %>
<%@ page contentType="text/html; charset=gbk" %>
<%
//获得数据包
request.setCharacterEncoding("UTF-8");
BufferedReader in = request.getReader();
String line;
String xmlRequest = "";
String domain_name = "";

while ((line = in.readLine()) != null)
{
//构造数据包
xmlRequest = xmlRequest line "\n";
}
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
DocumentBuilder db = factory.newDocumentBuilder();
ByteArrayInputStream stream = new ByteArrayInputStream(xmlRequest.getBytes("UTF-8"));
Document doc = db.parse(stream);
Element root = doc.getDocumentElement();

NodeList Domain = root.getElementsByTagName("Domain");
if (Domain.getLength() == 1) {
Element e = (Element) Domain.item(0);
domain_name = (String) e.getFirstChild().getNodeValue();
}
//返回数据
out.println("<?xml version=\"1.0\" encoding=\"gb2312\" ?>\n");
out.println("<Package>\n");
out.println("\t<Result>" domain_name "</Result>\n");
out.println("</Package>");
%>

3.得到返回结果
test.com

上一篇: 在 console(控制台)下编译和运行 Java 程序
下一篇: 一个简单的猜谜游戏的代码(高级用户界面制作)

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:一个2005年末典型的Java EE场景

下一篇:除旧迎新Java2005回顾与2006展望