Hola,
La diferencia entre forceplaceholders (por defecto) o forceliterals es la sintaxis del SQL que se envía a la base de datos.
En caso de forzar “placeholders” la sintaxis usa variables. Ésta es la sintaxis recomendada y la más eficiente para el planificador de consultas de SQL, además de la mas segura para evitar, por ejemplo, inyecciones de código. En este caso, el SQL resultante tiene el aspecto: WHERE tag IN (?,?,?,?,?) … Las variables se pasan una a una al final de la sentencia y serán sustituidas por los ? en la consulta.
En caso de forzar literales, la consulta se compila completamente como texto plano en la forma WHERE tag in (‘1’, ‘2’, ’23’). Este caso sólo debe usarse cuando exista la seguridad de que la consulta va a ser más eficiente por algún tipo de problemas con el analizador de consultas o los índices de la tabla, por lo general siempre es mejor dejar la opción por defecto (placeholders).
Saludos.