HTTP把指定的内部实体对象转换成xml,把xml转换成指定的内部实体对象
相信设计到通讯的工程,都会需要用的通讯协议http、soap...,相信也写过很多的接口soap接口、HTTP+XML接口,每次调用我们写的接口的时候传给我们的都是个XML格式的数据信息,我们需要把这些数据解析出来,然后再拼装成一个info发出去,以下写了一个通用的方法,利用JAVA的反射机制来实现:
代码如下:
Java代码
/**
* <p>
* Copyright (C), 1988-2008, Huawei Tech. Co., Ltd.
* </p>
* <p>
* FileName: Transform.java
* </p>
* <p>
* Author:tangtao Version :1.0 Date:2010-8-31
* </p>
* <p>
* Description:
* </p>
* <p>
* Version: 1.0
* </p>
* <p>
* Function List:
* </p>
*/
package com.huawei.nvs.sys.conn.http;
import java.io.ByteArrayInputStream;
import java.lang.reflect.AccessibleObject;
import java.lang.reflect.Field;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import java.util.Locale;
import java.util.Map;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
import org.w3c.dom.Element;
import org.w3c.dom.Node;
import com.huawei.nvs.sys.conn.http.bean.FieldInfo;
import com.huawei.nvs.sys.conn.http.bean.HttpInfo;
import com.huawei.nvs.sys.conn.http.bean.MessageInfo;
import com.huawei.nvs.sys.conn.http.bean.SendFieldInfo;
import com.huawei.nvs.sys.conn.http.conf.HttpEnv;
import com.huawei.nvs.sys.conn.http.exception.HttpException;
import com.huawei.nvs.sys.conn.http.util.ListMap;
import com.huawei.nvs.sys.conn.http.util.XmlTools;
/**
* <p>
* Title: Transform
* </p>
* <p>
* Description: HTTP消息转换类,把指定的内部实体对象转换成xml,把xml转换成指定的内部实体对象
* </p>
* <p>
* Copyright: Copyright (c) 2010-8-31
* </p>
* <p>
* Company: www.huawei.com
* </p>
*
* @author wanghui
* @version 1.0
*/
public class Transform
{
/**
* 把实体bean转换成xml字符串
*
* @param bean 实体对象
* @throws HttpException HttpException
* @return 转换成功的xml字符串
*/
public static String beanToXml(HttpInfo bean)
throws HttpException
{
if (null == bean)
{
throw new HttpException("Parameter bean is null.");
}
StringBuffer sbf = new StringBuffer("<?xml version='1.0' encoding='UTF-8'?>");
ListMap headFieldMap = new ListMap();
ListMap bodyFieldMap = new
相关新闻>>
- 发表评论
-
- 最新评论 更多>>