Heim  >  Artikel  >  Java  >  So schreiben Sie eine Mybatis-Fuzzy-Query-ähnliche Anweisung

So schreiben Sie eine Mybatis-Fuzzy-Query-ähnliche Anweisung

醉折花枝作酒筹
醉折花枝作酒筹Original
2021-05-19 15:26:0911519Durchsuche

Die Schreibmethode ist: 1. Verwenden Sie „${...}“, die Syntax ist „wie ‚${...}‘“ 2. Verwenden Sie „#{...}“, die Syntax ist „ wie '#{ ...}'"; 3. Verwenden Sie die CONCAT-Funktion, um die Parameterform zu verbinden, und die Syntax lautet „wie CONCAT('%',#{...},'%')".

So schreiben Sie eine Mybatis-Fuzzy-Query-ähnliche Anweisung

Die Betriebsumgebung dieses Tutorials: Windows 7-System, Java 10-Version, Dell G3-Computer.

Mehrere Verwendungsmöglichkeiten, um Fuzzy-Abfragen in Mybatis durchzuführen:

(1) Verwenden Sie ${...}

Hinweis: Da $ direkt als Parameter injiziert wird, kann diese Schreibmethode von jdbcType nicht verwendet werden in den geschweiften Klammern angegeben werden, andernfalls wird ein Fehler gemeldet

org.mybatis.spring.MyBatisSystemException: Nested Ausnahme ist org.apache.ibatis.reflection.ReflectionException: Es gibt keinen Getter für die Eigenschaft namens 'VARCHAR' in ' Klasse com.utry.ucsc.dao.bean.KnowledgeLibraryBean'

Nachteile: Es kann zu SQL-Injection kommen. Vermeiden Sie die Verwendung von ${...}

(2) Verwenden Sie #{...}

Hinweis: Wenn #{...} in eine SQL-Anweisung analysiert wird, werden einfache Anführungszeichen „“ automatisch außerhalb der Variablen hinzugefügt. Daher müssen % hier doppelte Anführungszeichen „“ verwenden und einfache Anführungszeichen „“ können nicht verwendet werden , andernfalls werden keine Ergebnisse gefunden.

(3) Verwenden Sie die Funktion CONCAT(), um Parameterformen zu verbinden

Das obige ist der detaillierte Inhalt vonSo schreiben Sie eine Mybatis-Fuzzy-Query-ähnliche Anweisung. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn