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

所以这是我的问题.我创建了一个表,其中包含mysql DB中的SET数据类型列.我想获得此(SET)列的值.我已完成所有连接配置,一切都在我的代码上运行良好.如何在Set java对象中获取带有resultSet的Set dataType ????我试过...

所以这是我的问题.我创建了一个表,其中包含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 );

本文标题为:如何将数据类型从mysql设置为java

基础教程推荐