1.了解命名规则
1.1 关于#{}
{}是配置符号 只有找到了配置符号 程序才会去解析
例如#{atRow:map:base}
atRow 指的是你调用的适配器
map 这里指的是你的数据类型 目前预设两种map/list
base 这就是解析后的map名称
注意:
1.配置是根据 英文: 来切割的 所以一定不能写成中文的
2.因为返回的是一个Map 所以List 和map 命名不要重复
第一行 #{atRow:list:base}
第二行 #{atRow:map:base}
因为解析后的数据是一个大的Map 这样后面的这个会把第一个List 替换掉
map名称重复 程序做的是更新操作 例如上图第一行的命名 和第7行的命名
1.2 关于${}
1.2.1${}是解析字段名称 符号
如果你配置文件写的 解析为map 名称为base 字段名称解析定义为${name}
则name 就是base 这个map下面的一对key-value
1.2.2目前支持二级的命名
配置文件#{atRow:list:base}
1.${obj.name} 该文件解析成base(Map)下面的obj(Map)下面的name(key-value)
2.${name} 该文件解析成base(Map)下面的name(key-value)
1.2.3自动截取
数据: 帅哥您好,今天天气炎热,注意:防晒
模板: ${name}您好,今天天气${weather},注意:${remark}
程序会自动解析为
name:帅哥 weather:炎热 remark:防晒
注意 解析规则 如果【您好,今天天气】和【,注意:】${} 变量里面出现 将会被删除掉
2.重要概念-指针
因为设计初衷为了解析复杂的Excel 肯定需要解析多行,所以相当于加入了两个指针的概念 (start 和end)
例如:start指向第5行 end指向第10行 则我认为这6行是一个组数据
3.如何解析
程序最开始坐标是start=0 end=0 然后根据用户的模板行数 逐行向下解析
如果找到#{} 配置符 说明我们需要解析这些数据 然后就更改start 和end 的值来锁定行数
然后再逐行 一 一位置对应 生成Map/List
4.我们需要怎么使用解析器
善于使用lastrowSite 来锁定位置 然后选择适当的适配器
