XStream将java对象转换为xml时,对象字段中的下划线“_”,转换后变成了两个的解决办法

 在前几天的一个项目中,由于数据库字段的命名原因 其中有两项:一项叫做"市场价格"一项叫做"商店价格" 为了便于区分,遂分别将其命名为market_price和shop_price.对应的实体类命名于此相似。可是在后台使用Xstream将数据读出转换为对xml对象时,前台使用Extjs的ajax请求,所有其他的属性在前台都可以被解析,唯独 此二者不可解析,仔细检查了一遍也没有发现是什么原因。后来将生产的xml文件粘贴到NotePad 放大后才发现原有得market_price 已经变成了market__price 知道了为什么解析不了的原因。于是在网上搜索找到了一个可行的办法:通过转换过滤来解决这个问题。具体解决方法如下:

    String xml = "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n"    + sm.toXML(results);
        xml=xml.replace("__", "_"); 

注意:在toXML方法后进行过滤替换。

posted @ 2018-01-02 14:06  花语苑  阅读(1404)  评论(0编辑  收藏  举报