All Downloads are FREE. Search and download functionalities are using the official Maven repository.

icu.mhb.mybatisplus.plugln.tookit.TableAliasCache Maven / Gradle / Ivy

package icu.mhb.mybatisplus.plugln.tookit;
import java.util.Map;
import java.util.concurrent.ConcurrentHashMap;
import java.util.function.Function;

/**
 * 表别名缓存
 *
 * @author mahuibo
 * @Title: TableAliasCache
 * @time 8/27/21 4:00 PM
 */
public final class TableAliasCache {

    private TableAliasCache() {
    }

    private static final Map, String> TABLE_ALIAS_CACHE = new ConcurrentHashMap<>();

    /**
     * 存入或者获取一个数据
     * 如果不存在则存入然后返回,存在则获取
     *
     * @param key             key
     * @param mappingFunction 执行的函数
     * @return 别名
     */
    public static String getOrSet(Class key, Function, String> mappingFunction) {
        return TABLE_ALIAS_CACHE.computeIfAbsent(key, mappingFunction);
    }

}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy