您的位置:首页 > 其它

编辑文章 - 博客频道 - CSDN.NET

2014-04-05 23:29 267 查看
<?xml version="1.0" encoding="UTF-8"?>
<entities>
<entity tableName="目标表名" excelSource="excel源文件名" startRow="起始行号">
<field fieldName="字段名" columnNum="列号" type="数据类型" />
<field fieldName="字段名" columnNum="列号" type="数据类型" />
<field fieldName="字段名" columnNum="列号" type="数据类型" />
...
...
<field fieldName="字段名" columnNum="列号" type="数据类型" />
</entity>
...
...
</entities>
<?xml version="1.0" encoding="UTF-8"?>
<entities>
<entity tableName="目标表名" excelSource="excel源文件名" startRow="起始行号">
<field fieldName="字段名" columnNum="列号" type="数据类型" />
<field fieldName="字段名" columnNum="列号" type="数据类型" />
<field fieldName="字段名" columnNum="列号" type="数据类型" />
...
...
<field fieldName="字段名" columnNum="列号" type="数据类型" />
</entity>
...
...
</entities>


def parse(){
List<Entity> entities = new ArrayList<Entity>();//创建实体列表,以供返回
InputStream is = this.class.getResourceAsStream("entitymapping.xml");//读取配置文件,创建输入流供XmlParser解析
def root = new XmlParser().parse(is);//解析entitymapping.xml,返回根结点
root.entity.each {//开始遍历所有entity结点
def entity = new Entity();
entity.tableName = it.attribute("tableName");//设置表名
entity.excelSource = it.attribute("excelSource");//设置excel源文件名
entity.startRow = Integer.parseInt(it.attribute("startRow"));//设置开始行号
List<Field> fields = new ArrayList<Field>();
it.field.each {//遍历字段结点
def field = new Field();
field.fieldName = it.attribute("fieldName");//设置字段名
field.columnNum = it.attribute("columnNum");//设置对应在excel源文件中的列号
field.type = it.attribute("type");//设置数据类型
fields.add(field);
}
entity.fields = fields;
entities.add(entity);
}
return entities;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: