List<String> 转json(存入数据库),json转回List<String>

1.List<String> 转json,这里用hutool工具类

List<String> list = new ArrayList<>();
list.add("a");
list.add("b");
String json = JSONUtil.toJsonStr(list);
此时的json格式为 "["a","b"]";   --------------最外层会有一个[],里面每个元素都会有"";

2.String 转成 List<String> ------------

有3个方法,
1.利用hutool工具包里的方法(最简单的)
  List<String> list = JSONUtil.toList(JSONUtil.parseArray(json), String.class);
2
.写一个工具类,去掉前后的[],然后循环 去掉每一个字符串的"",添加到list里
//list<String>转成的json格式转换回List<String>格式
public static List<String> getListFromJson(String json){
if(StringUtils.isNotEmpty(json)){
String[] per = json.substring(1,json.length()-1 ).split(",");

String[] permissions = new String[per.length];
for (int i =0; i< per.length; i++)
if (StringUtils.isNotEmpty(per[i]) && per[i].length() > 2) {
permissions[i] = per[i].substring(1, per[i].length() - 1);
}
return Convert.convert(List.class, permissions);
}
return
null;
}
3.这里用java8里的方法 List<String> list = Arrays.asList(json .split(",")).stream().map(s -> (s.substring(1,s.length()-1 ).trim())).collect(Collectors.toList());
 
原文地址:https://www.cnblogs.com/hmpcly/p/10439002.html