zoukankan      html  css  js  c++  java
  • Spring2.5.6 的一段源码疑似bug

    在AbstractJdbcInsert类中的方法:

    	private void setParameterValues(PreparedStatement preparedStatement, List<Object> values, int[] columnTypes)
    			throws SQLException {
    		int colIndex = 0;
    		for (Object value : values) {
    			colIndex++;
    			if (columnTypes == null || colIndex < columnTypes.length) {
    				StatementCreatorUtils.setParameterValue(preparedStatement, colIndex, SqlTypeValue.TYPE_UNKNOWN, value);
    			}
    			else {
    				StatementCreatorUtils.setParameterValue(preparedStatement, colIndex, columnTypes[colIndex - 1], value);
    			}
    		}
    	}
    看这里 if (columnTypes == null || colIndex < columnTypes.length) 
    为何colIndex < columnTypes.length时要使用SqlTypeValue.TYPE_UNKNOWN呢,应该这样的吧:
    if (columnTypes == null || colIndex > columnTypes.length) {
    				StatementCreatorUtils.setParameterValue(preparedStatement, colIndex, SqlTypeValue.TYPE_UNKNOWN, value);
    			}
    			else {
    				StatementCreatorUtils.setParameterValue(preparedStatement, colIndex, columnTypes[colIndex - 1], value);
    }
  • 相关阅读:
    每日总结
    每日总结
    每日总结
    每日总结
    每日总结
    每日总结
    每日总结
    每日总结
    Java学习哈希表2
    Java学习哈希表1
  • 原文地址:https://www.cnblogs.com/cwjcsu/p/8433115.html
Copyright © 2011-2022 走看看