public void setObjectValues(PreparedStatement pstmt, T entity) throws SQLException { for (int i = 0; i < columns.size(); i++) { Function<Object, Object> accessor = accessors.get(i); Object value = accessor.apply(entity); Function<Object, Object> f = preConvert.get(i); setParameter(pstmt, i + 1, f.apply(value)); } }