Module bus.cache

Class SqliteMetrics

java.lang.Object
org.miaixz.bus.cache.support.metrics.AbstractMetrics
org.miaixz.bus.cache.support.metrics.SqliteMetrics
All Implemented Interfaces:
Metrics

public class SqliteMetrics extends AbstractMetrics
SQLite数据库缓存命中率统计实现

基于SQLite数据库实现的缓存命中率统计,使用单连接数据源和JdbcTemplate进行数据库操作。 自动创建缓存统计表,支持并发更新和乐观锁机制。 SQLite是一种轻量级的嵌入式数据库,适用于单机环境或测试环境。

Since:
Java 17+
Author:
Kimi Liu
  • Constructor Details

    • SqliteMetrics

      public SqliteMetrics(Map<String,Object> context)
      构造方法
      Parameters:
      context - 上下文参数
    • SqliteMetrics

      public SqliteMetrics(String url, String username, String password)
      构造方法
      Parameters:
      url - 数据库URL
      username - 用户名
      password - 密码
  • Method Details

    • jdbcOperationsSupplier

      protected Supplier<org.springframework.jdbc.core.JdbcOperations> jdbcOperationsSupplier(Map<String,Object> context)
      创建JdbcOperations并初始化数据库

      创建SQLite数据库连接,初始化JdbcTemplate,并创建缓存统计表

      Specified by:
      jdbcOperationsSupplier in class AbstractMetrics
      Parameters:
      context - 上下文参数
      Returns:
      初始化完成的JdbcOperations对象
    • transferResults

      protected Stream<AbstractMetrics.DataDO> transferResults(List<Map<String,Object>> mapResults)
      将数据库查询结果转换为DataDO流

      将查询结果Map转换为DataDO对象流,便于后续处理 注意:SQLite中BIGINT类型在查询结果中可能返回Integer类型

      Specified by:
      transferResults in class AbstractMetrics
      Parameters:
      mapResults - 数据库查询结果
      Returns:
      DataDO流