@FunctionalInterface public interface PreparedStatementCreator
Implementations do not need to concern themselves with SQLExceptions that may be thrown from operations they attempt. The JdbcTemplate class will catch and handle SQLExceptions appropriately.
A PreparedStatementCreator should also implement the SqlProvider interface if it is able to provide the SQL it uses for PreparedStatement creation. This allows for better contextual information in case of exceptions.
PreparedStatement createPreparedStatement(Connection con) throws SQLException
con- the connection used to create statement
SQLException- there is no need to catch SQLExceptions that may be thrown in the implementation of this method. The JdbcTemplate class will handle them.