A consulta de streaming SpringBoot + Mybatis é tão poderosa!

Prefácio

A consulta de streaming do mybatis é um pouco impopular e raramente usada em cenários reais. No entanto, é um método muito eficaz em alguns cenários especiais. Muitas pessoas nunca ouviram falar dele. Na verdade, não prestam muita atenção ao mybatis. A ideia do mybatis ainda é que uma interface dao corresponda a um sql no mapeador. A chave para o mybatis é como escrever sql e a otimização do sql;

O que é a consulta de streaming mybatis?

Ao usar mybatis como estrutura da camada de persistência, após a execução bem-sucedida da solicitação de consulta de dados por meio de mybatis, o conjunto de resultados retornado por mybatis não é uma coleção ou objeto, mas um iterador. O conjunto de resultados pode ser retirado percorrendo o iterador para evitar o uso único.A recuperação de grandes quantidades de dados ocupa muita memória.

Cursor

org.apache.ibatis.cursor.CursorA interface possui três métodos abstratos, a saber

  • isOpen()  : Determina se o cursor está aberto;

  • isConsumed()  : Determina se todos os resultados da consulta foram lidos;

  • getCurrentIndex()  : Consulta a posição do índice dos dados lidos em todos os dados;

public interface Cursor<T> extends Closeable, Iterable<T> {
 //判断cursor是否正处于打开状态
 //当返回true,则表示cursor已经开始从数据库里刷新数据了;
  boolean isOpen();
  //判断查询结果是否全部读取完;
  //当返回true,则表示查询sql匹配的全部数据都消费完了&#

Acho que você gosta

Origin blog.csdn.net/WXF_Sir/article/details/131280437
Recomendado
Clasificación