list序列化为string存入数据库
目录
list序列化为string存入数据库
list序列化为string存入数据库
因为数据库里字段和java的string是对应的,我们想要存储list的时候就可以使用json序列化,将list序列化后存入数据库,取出时json解析出来还是list
直接上代码
存入数据库时
//list就是想要序列化的list
JSONObject.toJSONString(list);
源代码如下,返回一个string类型的值,将此值传入数据库即可
public static final String toJSONString(Object object) {
return toJSONString(object);
}
数据库中取出时
public List<T> select() {
return JSONObject.parseArray("从数据库中取出的String类型的字段",T.class);
}
源代码如下,返回一个List的泛型,也就是将string解析成了list泛型
public static final <T> List<T> parseArray(String text, Class<T> clazz) {
if (text == null) {
return null;
} else {
DefaultJSONParser parser = new DefaultJSONParser(text, ParserConfig.getGlobalInstance());
JSONLexer lexer = parser.getLexer();
ArrayList list;
if (lexer.token() == 8) {
lexer.nextToken();
list = null;
} else {
list = new ArrayList();
parser.parseArray(clazz, list);
parser.handleResovleTask(list);
}
parser.close();
return list;
}
}