mysql字符串转数组,合并结果集,转成数组1.使⽤GROUP_CONCAT函数将多个结果集合并
2.使⽤CONCAT函数将结果集加[ ]
3.实体类接收数据
private String id;
private String name;
private String[] item;
如果上⾯⽅法不⾏,就⾃定义注解处理
@TableField(typeHandler = ArrayStringTypeHandler.class, jdbcType = JdbcType.VARCHAR)
private String[] item;
/**
* 存储到数据库, 将String数组转换成字符串;
* 从数据库获取数据, 将字符串转为LONG数组.
*/
@MappedTypes({String[].class})
@MappedJdbcTypes({JdbcType.VARCHAR})
public class ArrayStringTypeHandler extends BaseTypeHandler<String[]>{ private static String[] l =new String[]{};
@Override
public void setNonNullParameter(PreparedStatement ps,int i,
String[] parameter, JdbcType jdbcType)throws SQLException {
ps.setString(i, JsonStr(parameter));
}
@Override
public String[]getNullableResult(ResultSet rs, String columnName) throws SQLException {
return JSONUtil.String(columnName)).toArray(l);
}
@Override
public String[]getNullableResult(ResultSet rs,int columnIndex)
throws SQLException {
return JSONUtil.String(columnIndex)).toArray(l);
}
@Override
数组转换成字符串public String[]getNullableResult(CallableStatement cs,int columnIndex) throws SQLException {
return JSONUtil.String(columnIndex)).toArray(l);
}
}
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论