Полагаю, оператор используется в запросах без параметров, но почему бы не использовать подготовленный оператор?
Это даже не близко.PreparedStatements используются в случае операторов INSERT, UPDATE и DELETE, которые возвращают ResultSet или счетчик обновлений.Они не будут работать для операторов DDL, как указано Joachim, и они также не будут работать для вызова хранимых процедур, где следует использовать CallableStatement (это не является разницей между двумя классами).Что касается запросов без параметров связывания, PreparedStatements может оказаться лучше, чем операторы (см. Ниже).
Какой из них быстрее для запросов без параметров.
PreparedStatements окажется быстрее в долгосрочной перспективе, по сравнению с расширенным использованием в одном соединении.Это потому, что, хотя PreparedStatements нужно скомпилировать, что может занять некоторое время (это на самом деле не так уж много, поэтому не рассматривайте это как недостаток), скомпилированная версия по существу содержит ссылку на план выполнения SQL вбаза данных.После компиляции PreparedStatement сохраняется в специальном кеше соединения, так что скомпилированная версия может быть повторно использована для повышения производительности.Если вы используете пакетные операции JDBC, использование PreparedStatements сделает выполнение пакета намного более быстрым, чем использование простых объектов Statement, где план, возможно, придется готовить снова и снова, если база данных должна это делать.