java工具類之map中存放list<實體類>,用於生成數據測試接口
Java Map 存放list集合
Map接口中鍵和值一一映射. 可以通過鍵來獲取值。
應用場景
比如你測試一個接口,返回的是一條數據。
圖示:
後端的這麼寫的:
@RequestMapping("user")
public class UserController {
@GetMapping("/getUser")
public User getUser() {
User user = new User();
user.setId(1L);
user.setAccount("12345678");
user.setPassword("12345678");
user.setEmail("[email protected]");
// 注意哦,這裏是直接返回的User類型,並沒有用ResultVO進行包裝
return user;
}
}
圖:
就會返回上訴的結果數據。
想測試接口是否可以返回多組數據?
就是一個map中存放list<實體類>的程序。
import java.util.*;
@GetMapping("/getAllUser")
public Map<String, List<User>> getAllUser() {
//假設生成第一組數據。
User user1 = new User();
user1.setId(1L);
user1.setAccount("12345678");
user1.setPassword("12345678");
user1.setEmail("[email protected]");
//假設生成第二組數據。...多組隨你定
User user2 = new User();
user2.setId(2L);
user2.setAccount("9877986");
user2.setPassword("adasdasd");
user2.setEmail("[email protected]");
//用一個list集合封裝起來
List<User> list = new ArrayList<User>();
list.add(user1);
list.add(user2);
//把list裝入map中。
Map<String, List<User>> map = new HashMap<>();
map.put("items", list);
Set<String> keys = map.keySet(); //獲取所有的key值
for(String key: keys){
System.out.println(key);
}
// 把map返回給前端
return map;
}
測試接口返回多組數據體:
統一了返回結果,不管是單條數據,多組數據都可以返回給前端,即統一結果響應功能封裝成功。