如何将数据类型从mysql设置为java

所以这是我的问题.我创建了一个表,其中包含mysql DB中的SET数据类型列.
我想获得此(SET)列的值.
我已完成所有连接配置,一切都在我的代码上运行良好.
如何在Set java对象中获取带有resultSet的Set dataType ????
我试过这个.
Java bean代码
public class Valeur {
private Long id;
private Set categoriesValues = new HashSet();
\\getters and setters for the id and the categoriesValues
}
ReultSet代码
private static Valeur map(ResultSet resultSet) throws SQLException {
Valeur valeur = new Valeur();
valeur.setId(resultSet.getLong("id"));
valeur.setCategoriesValues(resultSet.getString("categoriesValues"));
return valeur;
}
ResultSet用于id,但不用于Set类型.
谢谢
解决方法:
根据https://dev.mysql.com/doc/connector-j/en/connector-j-reference-type-conversions.html mysql set列映射到Java字符串.
似乎您需要自己拆分返回值以将其转换为Java集.
在您的示例中(未经测试):
String values = resultSet.getString("categoriesValues");
HashSet<String> valuesSet = new HashSet<>();
Collections.addAll(valuesSet , values.split(","));
valuer.setCategoriesValues(valuesSet );