写在前面,注意引包,hutool和Jackson.databind,guava这里是多种实现,看自己想用哪个就引特定的包!
一、pojo 互转 map
二、list 互转 map
package list常用操作.list_map_pojo互相转化;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.json.JSONUtil;
import com.fasterxml.jackson.core.type.TypeReference;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.google.common.collect.Lists;
import com.google.common.collect.Maps;
import model.Book;
import org.junit.Test;
import java.util.*;
import java.util.function.Function;
import java.util.stream.Collectors;
public class List_Bean_Map互转 {
private static List<Book> list;
private static Map<String,Object> map1;
static {
Book b1 = new Book().setBookId(1).setPrice(21.3).setLocation("sh").setAuthor("太宰治").setBookName("人间失格");
Book b2 = new Book().setBookId(3).setPrice(21.3).setLocation("sd").setAuthor("村上").setBookName("当跑步时");
Book b3 = new Book().setBookId(2).setPrice(13.3).setLocation("ah").setAuthor("黑泽").setBookName("七武士");
Book b4 = new Book().setBookId(4).setPrice(26.3).setLocation("hb").setAuthor("张嘉译").setBookName("陪你到世界尽头");
list = Lists.newArrayList(b1, b2, b3, b4);
}
static {
map1 = Maps.newHashMap();
map1.put("bookId",1);
map1.put("bookName","人间失格");
map1.put("author","太宰治");
map1.put("price",21.3);
map1.put("loca