Rumah  >  Artikel  >  Musim bunga dan boleh diedit "WHERE" @Query

Musim bunga dan boleh diedit "WHERE" @Query

王林
王林ke hadapan
2024-02-08 21:30:121182semak imbas

Editor PHP Xigua akan memperkenalkan kepada anda ciri hebat dalam rangka kerja Spring yang boleh diedit "WHERE" @Query. Rangka kerja Spring ialah salah satu rangka kerja yang paling popular dalam pembangunan Java, dan anotasi @Query ialah cara untuk menentukan pertanyaan tersuai yang disediakan oleh Spring Data JPA. Dalam pembangunan sebenar, kita selalunya perlu membina pernyataan pertanyaan SQL secara dinamik berdasarkan syarat yang berbeza, dan "WHERE" @Query yang boleh diedit dilahirkan untuk ini. Dengan menggunakan anotasi ini, kami boleh menjana klausa WHERE secara dinamik dalam kaedah pertanyaan mengikut keperluan untuk mencapai operasi pertanyaan yang lebih fleksibel dan cekap. Seterusnya, kami akan memperincikan cara menggunakan "WHERE" @Query yang boleh diedit untuk mengoptimumkan fungsi pertanyaan kami.

Kandungan soalan

Adakah mungkin untuk mencipta sesuatu seperti ini?

@Query(value = """
            SELECT Name
            FROM Users
            WHERE :column = :value
                   """, nativeQuery = true)
    List<Users> getValue(@Param("column") String column, @Param("value") String name);

Dan tukar "Lajur" kepada lajur yang saya mahu. userRepository.getVale("Nama","Mike");

Cara ini 1 pertanyaan boleh digunakan untuk lebih banyak pilihan

Penyelesaian

Menggunakan mybatis Anda boleh melakukan ini

import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;

@Select("select * from table where ${column} = #{value}")
List<Users> selectUsersByColumnValue(@Param("column")String column, @Param("value")String value);

Berhati-hati dengan ${column} risiko suntikan SQL

Atas ialah kandungan terperinci Musim bunga dan boleh diedit "WHERE" @Query. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:stackoverflow.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam