mxgraph提交xml数据,java后台解析

本文介绍如何使用mxgraph实现可拖动的拓扑图,并将移动数据保存到数据库。在前台,数据被提交;在后台,利用dom4j解析XML,通过两种方案进行处理。方案一因性能较好而首选,但遇到Windows到Linux环境迁移时的问题,需解决缺失jaxen.jar的问题。方案二遍历所有XML节点,性能较逊。作者希望通过博客记录成长,与读者共勉。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

需求:采用mxgraph实现可 拖动 拓扑图,并将移动后的拓扑图数据保存入数据库,供下次显示时读取

前台提交数据

//获取mxgraph拓扑图数据
var enc1 = new mxCodec(mxUtils.createXmlDocument());
var node1 = enc1.encode(graph.getModel());
var xml1 = mxUtils.getXml(node1);
		
//采用dwr的ajax方式向后台提交数据			
TopoService.saveTopoData(xml1,function(result){			//保存结果
});

后台解析数据

主要采用dom4j进行xml解析,分两套方案

/**
	 * 保存拓扑节点坐标信息
	 * @param userInfo
	 * @return
	 */
	public int saveTopoData(String xmldata) { 
		int updateResult = 1;
		Map<String, String> paraMap = new HashMap<String, String>();
 		InputSource in = new InputSource(new StringReader(xmldata));   
		//in.setEncoding("UTF-8");   
		in.setEncoding("GBK"); 
		SAXReader reader = 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值