有两种形式可以表达这种需求
一:通过建立一个二维维数组来表述:
1 Grid类
@Data
@AllArgsConstructor
@NoArgsConstructor
public class Grid {
Long x; // 栅格中心位置 x 值
Long y; // 栅格中心位置 y 值
String tag; //栅格中心位置的 rfid 标签或者 二维码标签
GridType gridType;
}
2: 一个二维数组类
@Data
@Component
@ConfigurationProperties(prefix = "maps")
public class WorkArea {
Grid [][] grids;
}
对应的yml文件描述
maps:
grids:
- #由于不知道具体对应的属性名称,所以这里必须空着
- grid-type: NORMAL
x: 0
y: 0
tag: sdd
- grid-type: NORMAL
x: 0
y: 1
tag: ddd
-
- grid-type: NORMAL
x: 2
y: 0
tag: sdd
- grid-type: NORMAL
x: 2
y: 1
tag: ddd
二、建立2个一维数组
1 Grid类,与(一)相同
2 2个一维数组类
@Data
@Component
@ConfigurationProperties(prefix = "maps")
public class WorkArea {
LstGrid [] grids;
@Data
public static class LstGrid{
Grid [ ] lines;
}
}
对应yml文件描述:
maps:
grids:
-lines:
- grid-type: NORMAL
x: 0
y: 0
tag: sdd
- grid-type: NORMAL
x: 0
y: 1
tag: ddd
-lines:
- grid-type: NORMAL
x: 2
y: 0
tag: sdd
- grid-type: NORMAL
x: 2
y: 1
tag: ddd