當需要把map轉為實體對象時,需要結合fastjson來實現,方法如下:
LinkedHashMap<String,Object> hashMap = new LinkedHashMap<>(); hashMap.put("name", "張三"); hashMap.put("age", 20); hashMap.put("addr", "湖北武漢1號"); User user = JSON.parseObject(JSON.toJSONString(hashMap), User.class);
User實體對象:
import lombok.Data;
@Data
public class User { private String name; private String addr; private Integer age; }
同理當需要把一個存有LinkedHashMap的集合轉成存放對象的集合時,方法如下:
List<Map> list1 = new ArrayList<>(); for (int i = 1; i <= 5; i++) { LinkedHashMap<Object, Object> hashMap = new LinkedHashMap<>(); hashMap.put("name", "張三" + i); hashMap.put("age", 20 + i); hashMap.put("addr", "湖北武漢" + i + "號"); list1.add(hashMap); } //轉數組對象 List<User> userList = JSON.parseArray(JSON.toJSONString(list1), User.class);