SetArray - лучшее решение, но оно недоступно для многих старых драйверов. Следующий способ обхода может быть использован в java8
String baseQuery ="SELECT my_column FROM my_table where search_column IN (%s)"
String markersString = inputArray.stream().map(e -> "?").collect(joining(","));
String sqlQuery = String.format(baseSQL, markersString);
//Now create Prepared Statement and use loop to Set entries
int index=1;
for (String input : inputArray) {
preparedStatement.setString(index++, input);
}
. Это решение лучше, чем другие уродливые решения для цикла, где строка запроса построена с помощью ручных итераций