[JAVA] Deaktivieren Sie den MyBatis3-Cache

Bei der Suche mit MyBatis wird standardmäßig die zwischengespeicherte Instanz zurückgegeben, wenn Sie sie mit denselben Parametern in derselben Transaktion aufrufen, ohne dass beim zweiten Mal SQL ausgegeben wird.

[MyBatis3-Einstellungen](http: // http: //www.mybatis.org/mybatis-3/ja/configuration.html)

MyBatis verwendet einen lokalen Cache, um Zirkelverweise aufzulösen und verschachtelte Abfragen zu beschleunigen. Standardmäßig (SESSION) werden alle Abfrageergebnisse in derselben Sitzung zwischengespeichert. Wenn Sie localCacheScope auf STATEMENT setzen, wird der lokale Cache Anweisung für Anweisung angewendet. Mit anderen Worten, mehrere Aufrufe derselben SqlSession teilen keine Daten.

Deaktivieren Sie den Cache

Sie können den zu verwaltenden lokalen Cache Anweisung für Anweisung ändern, indem Sie Folgendes festlegen: Bei der Verwaltung nach Anweisung führt MyBatis jedes Mal SQL aus, um die neueste Entität abzurufen.

application.properties


mybatis.config-location=classpath:/mybatis/mybatis-config.xml

mybatis-config.xml


<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configuration
    PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
    "http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
	<settings>
		<setting name="localCacheScope" value="STATEMENT" />
	</settings>
</configuration>

Recommended Posts

Deaktivieren Sie den MyBatis3-Cache
Mein Batis-Memorandum
Meine Batis-Geschichte