避免JDBC查询中的CheckStyle magic number错误

前端之家收集整理的这篇文章主要介绍了避免JDBC查询中的CheckStyle magic number错误前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在上课一个小组项目,我们正在尝试CheckStyle.

我对@L_502_0@非常满意,但从未触及到JDBC或在此之前完成任何数据库工作.

我想知道如果有一个优雅的方式来避免在准备语句电话中出现错误的数字错误,请考虑:

preparedStatement = connect.prepareStatement("INSERT INTO shows "
                + "(showid,showtitle,showinfo,genre,youtube)"
                + "values (default,?,?);");
        preparedStatement.setString(1,title);
        preparedStatement.setString(2,info);
        preparedStatement.setString(3,genre);
        preparedStatement.setString(4,youtube);
        result = preparedStatement.executeUpdate();

setString方法标记为魔术数字,到目前为止,我刚刚将数字3-10左右添加到魔术数字的忽略列表中,但我想知道是否有更好的方法来将这些值插入到语句中.我也要求你提出任何其他建议,请注意看到这个代码,我想避免发展任何讨厌的习惯,例如我应该使用Statement还是PreparedStatement吗?那会让我参考列名吗?那是理想吗等等…

谢谢!

解决方法

创建一个实用的方法,这样做:
public static void setValues(PreparedStatement preparedStatement,Object... values) throws sqlException {
    for (int i = 0; i < values.length; i++) {
        preparedStatement.setObject(i + 1,values[i]);
    }
}

并使用如下:

setValues(preparedStatement,title,info,youtube);

要么

Object[] values = {
    title,youtube
};

setValues(preparedStatement,values);

关于基本JDBC编码的更多“最佳实践”可以在this article中找到.

希望这可以帮助.

原文链接:https://www.f2er.com/java/122294.html

猜你在找的Java相关文章