2017-01-24 56 views
1

在我的一个项目中,我有一个场景,我将得到一个包含sql参数的xml文件,我必须从中读取并构建Java对象。将XML解析为Java对象列表<Map <String,String >> sqlParams;

下面是示例XML

<parameters> 
    <sql id="1"> 
     <city>Chennai</city> 
     <state>Tamilnadu</state> 
    </sql> 
    <sql id="2"> 
     <city>Mumbai</city> 
     <state>Maharashtra</state> 
    </sql> 
    <sql id="3"> 
     <city>Kolkata</city> 
     <state>West Bengal</state> 
    </sql> 
</parameters> 

我必须分析,并从这些XML键和值。 的Java对象,我希望是

List<Map<String,String>> sqlParams; 
Map sqlOne; sqlOne.put(city,Chennai); sqlOne.put(state,Tamilnadu); sqlParams.add(sqlOne); 
Map sqlTwo; sqlTwo.put(city,Mumbai); sqlTwo.put(state,Maharashtra); sqlParams.add(sqlTwo); 

等等...

我们使用地图的名单来运行SQL。 有人可以建议我一个更好的方法来做到这一点。

回答

0

映射XML的一种非常快速和便捷的方式是使用一些现有的库,如Jackson。 它的用法很简单。你写一个普通的类对象的例子一样:

public class Simple { 
    public int x = 1; 
    public int y = 2; 
} 

其结构映射这样的:

<Simple> 
    <x>1</x> 
    <y>2</y> 
</Simple> 

安装你很直观如何映射数据结构中的库后。 我建议您为您的下一个项目使用一些项目管理工具(如maven或gradle),它允许您轻松导入用于此类任务的库并花费一些时间来调查数据库查询的实现方式。您可能会看到将JPA作为起点。

相关问题