使用JDom从Java后台给Flex前端传递xml数据

在Java作为服务器时候在给前端传递数据的时候可能会遇到xml ,[b]在与flex交互中,
可以在Java端生成xml的字符串传到Flex端[/b]。

jdom 需要重网上下载 ,工程引入jdom.jar即可;

[b]flex端 接受 这个字符串 ,并处理为xml对象[/b],在给tree绑定值
var xmlll:XML = new XML(xmlString);


Element root, name, age;//声明xml节点
root = new Element("root"); // 创建 root 元素
Document myDocument = new Document(root); // 设置 "root" 为根节点
name = new Element("name"); //初始化元素
age = new Element("age");
Attribute attName= new Attribute("label","zhang"); //声明节点属性 并赋值
name.setAttribute(attName); //为节点添加属性
age.addContent("24"); //给元素内容赋值
// 将address元素作为子元素,添加到root根元素中
root.addContent(name);

dome:
package com.xml;

import java.io.ByteArrayOutputStream;
import java.io.FileWriter;

import org.jdom.*;

import org.jdom.input.*;

import org.jdom.output.*;

public class CreateXML_01 {

Element root, name, age, sex, address, street, city, district; // 声明xml元素

public CreateXML_01() {
root = new Element("root"); // 创建 root 元素
Document myDocument = new Document(root); // 设置 "root" 为根节点

// 创建XML文档中的其他元素,并初始化元素名
name = new Element("name");
age = new Element("age");
sex = new Element("sex");
address = new Element("address");
street = new Element("street");
city = new Element("city");
district = new Element("district");

// 给XML文档中的每一个元素添加内容值

//name.addContent("zhang");

Attribute attName= new Attribute("label","zhang");

name.setAttribute(attName);

age.addContent("24");

sex.addContent("male");

street.addContent("No.1 East Rood,ShangDi");

district.addContent("Hai Dian");

city.addContent("Bei Jing");
// 将street、district和city元素作为子元素,添加到address元素中

address.addContent(street);

address.addContent(district);

address.addContent(city);

// 将address元素作为子元素,添加到customer根元素中

root.addContent(name);

root.addContent(age);

root.addContent(sex);

root.addContent(address);

// try
//
// {
//
// // 创建XML文件输出流
//
// XMLOutputter fmt = new XMLOutputter();
//
// // 创建文件输出流
//
// FileWriter writer = new FileWriter("c:\\customer.xml");
//
// // 设置所创建的XML文档的格式
//
// Format f = Format.getPrettyFormat();
//
// fmt.setFormat(f);
//
// // 将生成的XML文档写入到"c:\customer.xml"文件中
//
// fmt.output(myDocument, writer);
//
// writer.close();
//
// }
//
// catch (Exception e) {
// e.printStackTrace();
// }

OutputToString(myDocument);

}

public static String OutputToString(Document document) {
ByteArrayOutputStream byteRep = new ByteArrayOutputStream();
XMLOutputter docWriter = new XMLOutputter();
try {
docWriter.output(document, byteRep);
} catch (Exception e) {
e.printStackTrace();
}

System.out.println(byteRep.toString());
return byteRep.toString();
}

public static void main(String[] args) {
CreateXML_01 cm = new CreateXML_01();
}
}

Java后台测试结果:
<?xml version="1.0" encoding="UTF-8"?>
<root><name label="zhang">zhang</name><age>24</age><sex>male</sex><address><street>No.1 East Rood,ShangDi</street><district>Hai Dian</district><city>Bei Jing</city></address></root>

参考http://hi.baidu.com/cq_yajun/blog/item/2cdce9c9796c09f152664fa8.html
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值