diff --git a/src/main/java/com/github/yulichang/common/support/alias/AliasLambdaQueryWrapper.java b/src/main/java/com/github/yulichang/common/support/alias/AliasLambdaQueryWrapper.java index f1e0a25..efcfb3c 100644 --- a/src/main/java/com/github/yulichang/common/support/alias/AliasLambdaQueryWrapper.java +++ b/src/main/java/com/github/yulichang/common/support/alias/AliasLambdaQueryWrapper.java @@ -1,23 +1,15 @@ package com.github.yulichang.common.support.alias; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; -import com.baomidou.mybatisplus.core.metadata.TableInfo; -import com.baomidou.mybatisplus.core.metadata.TableInfoHelper; -import com.baomidou.mybatisplus.core.toolkit.Assert; -import com.baomidou.mybatisplus.core.toolkit.CollectionUtils; import com.baomidou.mybatisplus.core.toolkit.StringPool; import com.baomidou.mybatisplus.core.toolkit.StringUtils; import com.baomidou.mybatisplus.core.toolkit.support.SFunction; -import java.util.Map; -import java.util.concurrent.ConcurrentHashMap; -import java.util.stream.Collectors; - /** * 字段添加别名 * 使用方法: *

- * select ${ew.aliasColumn("table","t")} from table t ${ew.customSqlSegment("t")} + * select t.id,t.sex from table t ${ew.customSqlSegment("t")} *

* 对应sql *

@@ -31,12 +23,6 @@ import java.util.stream.Collectors; * @author yulichang */ public class AliasLambdaQueryWrapper extends LambdaQueryWrapper { - - /** - * 别名查询字段缓存 - */ - private static final Map, Map> ALIAS_COLUMN_CACHE = new ConcurrentHashMap<>(); - /** * 字段别名 */ @@ -58,43 +44,4 @@ public class AliasLambdaQueryWrapper extends LambdaQueryWrapper { this.alias = alias; return super.getCustomSqlSegment(); } - - /** - * ew.customSqlSegment("table_name", "t") - * - * @param tableName 数据库表名 - * @param alias 别名 - */ - public String aliasColumn(String tableName, String alias) { - TableInfo tableInfo = TableInfoHelper.getTableInfo(tableName); - Assert.notNull(tableInfo, "未找到对应的表 -> %s", tableName); - Assert.isTrue(StringUtils.isNotBlank(alias), "别名不能为空"); - - this.alias = alias; - Map aliasMap = ALIAS_COLUMN_CACHE.get(tableInfo.getEntityType()); - if (CollectionUtils.isEmpty(aliasMap)) { - aliasMap = new ConcurrentHashMap<>(); - String s = concat(tableInfo, alias); - aliasMap.put(alias, s); - ALIAS_COLUMN_CACHE.put(tableInfo.getEntityType(), aliasMap); - return s; - } else { - if (!aliasMap.containsKey(alias)) { - String s = concat(tableInfo, alias); - aliasMap.put(alias, s); - return s; - } else { - return aliasMap.get(alias); - } - } - } - - private String concat(TableInfo tableInfo, String alias) { - String s = tableInfo.getFieldList().stream().map( - i -> alias + StringPool.DOT + i.getColumn()).collect(Collectors.joining(StringPool.COMMA)); - if (tableInfo.havePK()) { - s = alias + StringPool.DOT + tableInfo.getKeyColumn() + StringPool.COMMA + s; - } - return s; - } } diff --git a/wx.png b/wx.png index c1fe592..b2247ca 100644 Binary files a/wx.png and b/wx.png differ