Mengoptimumkan Pertanyaan IN() dalam JDBCTtemplate Spring
Membuat pertanyaan IN() secara manual dalam JDBCTemplate Spring melalui penggabungan rentetan adalah tidak cekap dan mudah ralat. Kaedah unggul memanfaatkan penggantian parameter untuk kod yang lebih bersih dan selamat.
Menggunakan ParameterSource untuk Meningkatkan Kecekapan
Pendekatan pilihan melibatkan penggunaan ParameterSource
. Ini membolehkan penggunaan koleksi atau tatasusunan untuk mentakrifkan kriteria pertanyaan IN(), secara automatik mengendalikan penukaran kepada rentetan yang dipisahkan koma.
Contoh Kod Ilustrasi:
<code class="language-java">Set<Integer> ids = ...; MapSqlParameterSource parameters = new MapSqlParameterSource(); parameters.addValue("ids", ids); List<Foo> fooList = getJdbcTemplate().query("SELECT * FROM foo WHERE a IN (:ids)", parameters, new FooRowMapper());</code>
Pertimbangan Penting: Teknik ini memerlukan penggunaan NamedParameterJdbcTemplate
, mudah diakses melalui getJdbcTemplate()
.
Kelebihan Utama:
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menggunakan Pertanyaan IN() dengan Cekap dengan JDBCTtemplate Spring?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!