Skip to content

Commit de742e7

Browse files
committed
新增支持 ManticoreSearch-替代 Elasticsearch 的轻量级搜索引擎,兼容 MySQL 协议
1 parent bc1035f commit de742e7

File tree

5 files changed

+17
-3
lines changed

5 files changed

+17
-3
lines changed

APIJSONORM/pom.xml

+1-1
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55

66
<groupId>com.github.Tencent</groupId>
77
<artifactId>APIJSON</artifactId>
8-
<version>7.6.0</version>
8+
<version>7.7.0</version>
99
<packaging>jar</packaging>
1010

1111
<name>APIJSONORM</name>

APIJSONORM/src/main/java/apijson/Log.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ public class Log {
1414

1515
public static boolean DEBUG = true;
1616

17-
public static final String VERSION = "7.6.0";
17+
public static final String VERSION = "7.7.0";
1818
public static final String KEY_SYSTEM_INFO_DIVIDER = "\n---|-----APIJSON SYSTEM INFO-----|---\n";
1919

2020
public static final String OS_NAME;

APIJSONORM/src/main/java/apijson/orm/AbstractSQLConfig.java

+10-1
Original file line numberDiff line numberDiff line change
@@ -185,6 +185,7 @@ public abstract class AbstractSQLConfig<T extends Object> implements SQLConfig<T
185185
DATABASE_LIST.add(DATABASE_DAMENG);
186186
DATABASE_LIST.add(DATABASE_KINGBASE);
187187
DATABASE_LIST.add(DATABASE_ELASTICSEARCH);
188+
DATABASE_LIST.add(DATABASE_MANTICORE);
188189
DATABASE_LIST.add(DATABASE_CLICKHOUSE);
189190
DATABASE_LIST.add(DATABASE_HIVE);
190191
DATABASE_LIST.add(DATABASE_PRESTO);
@@ -1189,6 +1190,14 @@ public static boolean isElasticsearch(String db) {
11891190
return DATABASE_ELASTICSEARCH.equals(db);
11901191
}
11911192

1193+
@Override
1194+
public boolean isManticore() {
1195+
return isManticore(getSQLDatabase());
1196+
}
1197+
public static boolean isManticore(String db) {
1198+
return DATABASE_MANTICORE.equals(db);
1199+
}
1200+
11921201
@Override
11931202
public boolean isClickHouse() {
11941203
return isClickHouse(getSQLDatabase());
@@ -1344,7 +1353,7 @@ public static boolean isOpenGauss(String db) {
13441353

13451354
@Override
13461355
public String getQuote() { // MongoDB 同时支持 `tbl` 反引号 和 "col" 双引号
1347-
if(isElasticsearch() || isIoTDB() || isSurrealDB()) {
1356+
if(isElasticsearch() || isManticore() || isIoTDB() || isSurrealDB()) {
13481357
return "";
13491358
}
13501359
return isMySQL() || isMariaDB() || isTiDB() || isClickHouse() || isTDengine() || isMilvus() ? "`" : "\"";

APIJSONORM/src/main/java/apijson/orm/SQLConfig.java

+2
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@ public interface SQLConfig<T extends Object> {
2828
String DATABASE_DAMENG = "DAMENG"; // https://www.dameng.com
2929
String DATABASE_KINGBASE = "KINGBASE"; // https://www.kingbase.com.cn
3030
String DATABASE_ELASTICSEARCH = "ELASTICSEARCH"; // https://www.elastic.co/guide/en/elasticsearch/reference/7.4/xpack-sql.html
31+
String DATABASE_MANTICORE = "MANTICORE"; // https://manticoresearch.com
3132
String DATABASE_CLICKHOUSE = "CLICKHOUSE"; // https://clickhouse.com
3233
String DATABASE_HIVE = "HIVE"; // https://hive.apache.org
3334
String DATABASE_PRESTO = "PRESTO"; // Facebook PrestoDB https://prestodb.io
@@ -86,6 +87,7 @@ public interface SQLConfig<T extends Object> {
8687
boolean isDameng();
8788
boolean isKingBase();
8889
boolean isElasticsearch();
90+
boolean isManticore();
8991
boolean isClickHouse();
9092
boolean isHive();
9193
boolean isPresto();

APIJSONORM/src/main/java/apijson/orm/exception/CommonException.java

+3
Original file line numberDiff line numberDiff line change
@@ -211,6 +211,9 @@ else if (config.isKingBase()) {
211211
else if (config.isElasticsearch()) {
212212
db = SQLConfig.DATABASE_ELASTICSEARCH + " " + dbVersion;
213213
}
214+
else if (config.isManticore()) {
215+
db = SQLConfig.DATABASE_MANTICORE + " " + dbVersion;
216+
}
214217
else if (config.isClickHouse()) {
215218
db = SQLConfig.DATABASE_CLICKHOUSE + " " + dbVersion;
216219
}

0 commit comments

Comments
 (0)