JdbcPreparedStatement is all about setting different value types for parameters in a parameterized SQL query. Specific methods set a specific type of parameter (setByte, setTimestamp) while a couple of them deal with a generic Objects and the code needs to handle all the possible value types accordingly.