为了将两个list数据对应起来方便前端进行处理。
需求:第一个图片对应于第一个视频作为视频的封面。
两个数组:List< String > imgList, List< String > videoList
视频多于图片时不返回视频
由于前期数据结构设计未考虑到添加视频功能,图片和视频无法对应起来。之前返回的两个list数组,前端需要自己处理将第一个图片和第一个视频对应起来,因此进行优化如下:
List<Map<String, Object>> resMap = Lists.newArrayList();
for (int i = 0; i < imgList.size(); i++) {
Map<String, Object> map = new HashMap<>();
map.put("positionImg", imgList.get(i));
if (null !=videoList && i < videoList.size()) {
map.put("positionVideo", videoList.get(i));
}
resMap.add(map);
}
return resMap;
返回JSON数据:
"positionSlide": [
{
"positionImg": "http://images.chengxinzhaopin.net/dgztc/6b0f6dd8fa6299d8b73945be96d36792.jpeg",
"positionVideo": "http://dgztc.oss-cn-hangzhou.aliyuncs.com/video/ec3d36b2150c5c705514345c02bbd361.mp4"
},
{
"positionImg": "http://images.chengxinzhaopin.net/dgztc/b3c82a9e1ce336d858746da75ee97bd3.jpeg",
"positionVideo": "http://dgztc.oss-cn-hangzhou.aliyuncs.com/video/43922be9e71016ce330a7d4535cf1bb7.mp4"
},
{
"positionImg": "https://img.hntv9hr.com/dgztc/6104630eeb3df726683ac945ff67b2a6.jpeg"
}
],
这样的返回数据结构就很方便前端进行处理了。