mirror of
https://gitee.com/dromara/easy-es.git
synced 2025-12-06 09:09:13 +08:00
Merge branch 'feature-3.0' of https://gitee.com/dromara/easy-es into feature-3.0
Conflicts: easy-es-springboot-test/src/test/resources/application.yml
This commit is contained in:
commit
3bc2a7a860
@ -12,6 +12,12 @@
|
||||
"description": "是否开启easy-es LOGO BANNER的打印.",
|
||||
"type": "java.lang.Boolean"
|
||||
},
|
||||
{
|
||||
"defaultValue": false,
|
||||
"name": "easy-es.compatible",
|
||||
"description": "是否开启兼容性(超低版本的es, 比如7.0.0开启该特性).",
|
||||
"type": "java.lang.Boolean"
|
||||
},
|
||||
{
|
||||
"defaultValue": "127.0.0.1:9200",
|
||||
"name": "easy-es.address",
|
||||
|
||||
@ -94,6 +94,15 @@ public interface BaseEsMapper<T> {
|
||||
*/
|
||||
Boolean deleteIndex(String... indexNames);
|
||||
|
||||
/**
|
||||
* 删除当前mapper索引,无需传递索引名
|
||||
* @return {@link Boolean} 是否成功
|
||||
* @author MoJie
|
||||
*/
|
||||
default Boolean deleteIndex() {
|
||||
return this.deleteIndex(EntityInfoHelper.getIndexName(this.getEntityClass()));
|
||||
}
|
||||
|
||||
/**
|
||||
* 刷新索引
|
||||
*
|
||||
|
||||
@ -102,9 +102,7 @@ public class BaseEsMapperImpl<T> implements BaseEsMapper<T> {
|
||||
|
||||
@Override
|
||||
public Boolean createIndex() {
|
||||
EntityInfo entityInfo = EntityInfoHelper.getEntityInfo(entityClass);
|
||||
CreateIndexParam createIndexParam = IndexUtils.getCreateIndexParam(entityInfo, entityClass);
|
||||
return IndexUtils.createIndex(client, entityInfo, createIndexParam);
|
||||
return createIndex(EntityInfoHelper.getIndexName(entityClass));
|
||||
}
|
||||
|
||||
@Override
|
||||
@ -164,8 +162,13 @@ public class BaseEsMapperImpl<T> implements BaseEsMapper<T> {
|
||||
@Override
|
||||
@SneakyThrows
|
||||
public String executeSQL(String sql) {
|
||||
// 如果是下划线转驼峰,ee帮助处理
|
||||
if (GlobalConfigCache.getGlobalConfig().getDbConfig().isMapUnderscoreToCamelCase()) {
|
||||
sql = StringUtils.camelToUnderline(sql);
|
||||
}
|
||||
PrintUtils.printSql(sql);
|
||||
QueryResponse response = client.sql().query(x -> x.query(sql).format("json"));
|
||||
String finalSql = sql;
|
||||
QueryResponse response = client.sql().query(x -> x.query(finalSql).format("json"));
|
||||
return JsonpUtils.toString(response, new StringBuilder()).toString();
|
||||
}
|
||||
|
||||
|
||||
@ -627,8 +627,14 @@ public class WrapperProcessor {
|
||||
// 设置以String形式指定的自定义排序字段及规则(此类排序通常由前端传入,满足部分用户个性化需求)
|
||||
if (CollectionUtils.isNotEmpty(wrapper.orderByParams)) {
|
||||
wrapper.orderByParams.forEach(orderByParam -> {
|
||||
// 排序字段名
|
||||
String orderColumn = orderByParam.getOrder();
|
||||
// 获取配置是否开启了驼峰转换
|
||||
if (GlobalConfigCache.getGlobalConfig().getDbConfig().isMapUnderscoreToCamelCase()) {
|
||||
orderColumn = StringUtils.camelToUnderline(orderColumn);
|
||||
}
|
||||
// 设置排序字段
|
||||
FieldSort.Builder fieldSortBuilder = new FieldSort.Builder().field(orderByParam.getOrder());
|
||||
FieldSort.Builder fieldSortBuilder = new FieldSort.Builder().field(orderColumn);
|
||||
|
||||
// 设置排序规则
|
||||
if (SortOrder.Asc.toString().equalsIgnoreCase(orderByParam.getSort())) {
|
||||
|
||||
@ -374,6 +374,7 @@ public class EntityInfoHelper {
|
||||
if (dbConfig.isMapUnderscoreToCamelCase()) {
|
||||
realHighLightField = StringUtils.camelToUnderline(realHighLightField);
|
||||
}
|
||||
// 如果字段没有参与条件查询,则不进行高亮设置
|
||||
addHighlightParam(entityInfo, nestedOrObjectClass, highLight, realHighLightField, mappingField);
|
||||
|
||||
MultiIndexField multiIndexField = field.getAnnotation(MultiIndexField.class);
|
||||
@ -413,6 +414,11 @@ public class EntityInfoHelper {
|
||||
.setHighLightField(realHighLightField)
|
||||
.setHighLightType(highLight.highLightType())
|
||||
.setRequireFieldMatch(highLight.requireFieldMatch());
|
||||
// 多级高亮 合并高亮结果时,es8会尝试调用 first() 方法-降级不会影响es7的查询
|
||||
// 如果是pinyin那么进行高亮降级,否则会出现first() should not be called in this context异常
|
||||
if (realHighLightField.endsWith(".pinyin")) {
|
||||
highlightParam.setHighLightType(HighLightTypeEnum.PLAIN);
|
||||
}
|
||||
if (MINUS_ONE != highLight.numberOfFragments() && highLight.numberOfFragments() > ZERO) {
|
||||
highlightParam.setNumberOfFragments(highLight.numberOfFragments());
|
||||
}
|
||||
@ -694,6 +700,31 @@ public class EntityInfoHelper {
|
||||
return ReflectionKit.getFieldList(ClassUtils.getUserClass(clazz));
|
||||
}
|
||||
|
||||
/**
|
||||
* 根据类获取索引名
|
||||
* @param clazz 实体
|
||||
* @return {@link String}
|
||||
* @author MoJie
|
||||
*/
|
||||
public static String getIndexName(Class<?> clazz) {
|
||||
String tablePrefix = GlobalConfigCache.getGlobalConfig().getDbConfig().getIndexPrefix();
|
||||
IndexName table = clazz.getAnnotation(IndexName.class);
|
||||
boolean tablePrefixEffect = true;
|
||||
String indexName = clazz.getSimpleName().toLowerCase(Locale.ROOT);
|
||||
if (table != null) {
|
||||
if (StringUtils.isNotBlank(table.value())) {
|
||||
indexName = table.value();
|
||||
if (StringUtils.isNotBlank(tablePrefix) && !table.keepGlobalPrefix()) {
|
||||
tablePrefixEffect = false;
|
||||
}
|
||||
}
|
||||
}
|
||||
if (StringUtils.isNotBlank(tablePrefix) && tablePrefixEffect) {
|
||||
indexName = tablePrefix + indexName;
|
||||
}
|
||||
return indexName;
|
||||
}
|
||||
|
||||
/**
|
||||
* 初始化索引名等信息
|
||||
*
|
||||
|
||||
@ -10,6 +10,7 @@ import co.elastic.clients.elasticsearch.core.SearchRequest;
|
||||
import co.elastic.clients.elasticsearch.core.SearchResponse;
|
||||
import co.elastic.clients.json.JsonData;
|
||||
import co.elastic.clients.transport.rest_client.RestClientOptions;
|
||||
import org.dromara.easyes.common.constants.BaseEsConstants;
|
||||
import org.dromara.easyes.core.biz.EntityInfo;
|
||||
import org.dromara.easyes.core.biz.EsPageInfo;
|
||||
import org.dromara.easyes.core.biz.OrderByParam;
|
||||
@ -939,41 +940,41 @@ public class AllTest {
|
||||
Boolean success = documentMapper.setRequestOptions(new RestClientOptions(builder.build()));
|
||||
Assertions.assertTrue(success);
|
||||
}
|
||||
//
|
||||
// // 4.删除
|
||||
// @Test
|
||||
// @Order(76)
|
||||
// public void testDeleteById() {
|
||||
// int count = documentMapper.deleteById("1");
|
||||
// Assertions.assertEquals(1, count);
|
||||
// }
|
||||
//
|
||||
// @Test
|
||||
// @Order(77)
|
||||
// public void testDeleteBatchIds() {
|
||||
// List<String> idList = Arrays.asList("2", "3", "4");
|
||||
// int count = documentMapper.deleteBatchIds(idList);
|
||||
// Assertions.assertEquals(3, count);
|
||||
// }
|
||||
//
|
||||
// @Test
|
||||
// @Order(78)
|
||||
// public void testDeleteByWrapper() {
|
||||
// LambdaEsQueryWrapper<Document> wrapper = new LambdaEsQueryWrapper<>();
|
||||
// wrapper.match(Document::getCreator, "老汉");
|
||||
//
|
||||
// int count = documentMapper.delete(wrapper);
|
||||
// Assertions.assertEquals(18, count);
|
||||
// }
|
||||
//
|
||||
// @Test
|
||||
// @Order(80)
|
||||
// public void testDeleteIndex() {
|
||||
// boolean deleted = documentMapper.deleteIndex(EntityInfoHelper.getEntityInfo(Document.class).getIndexName());
|
||||
// boolean lockDeleted = documentMapper.deleteIndex(BaseEsConstants.LOCK_INDEX);
|
||||
// Assertions.assertTrue(deleted);
|
||||
// Assertions.assertTrue(lockDeleted);
|
||||
// }
|
||||
|
||||
// 4.删除
|
||||
@Test
|
||||
@Order(76)
|
||||
public void testDeleteById() {
|
||||
int count = documentMapper.deleteById("1");
|
||||
Assertions.assertEquals(1, count);
|
||||
}
|
||||
|
||||
@Test
|
||||
@Order(77)
|
||||
public void testDeleteBatchIds() {
|
||||
List<String> idList = Arrays.asList("2", "3", "4");
|
||||
int count = documentMapper.deleteBatchIds(idList);
|
||||
Assertions.assertEquals(3, count);
|
||||
}
|
||||
|
||||
@Test
|
||||
@Order(78)
|
||||
public void testDeleteByWrapper() {
|
||||
LambdaEsQueryWrapper<Document> wrapper = new LambdaEsQueryWrapper<>();
|
||||
wrapper.match(Document::getCreator, "老汉");
|
||||
|
||||
int count = documentMapper.delete(wrapper);
|
||||
Assertions.assertEquals(18, count);
|
||||
}
|
||||
|
||||
@Test
|
||||
@Order(80)
|
||||
public void testDeleteIndex() {
|
||||
boolean deleted = documentMapper.deleteIndex(EntityInfoHelper.getEntityInfo(Document.class).getIndexName());
|
||||
boolean lockDeleted = documentMapper.deleteIndex(BaseEsConstants.LOCK_INDEX);
|
||||
Assertions.assertTrue(deleted);
|
||||
Assertions.assertTrue(lockDeleted);
|
||||
}
|
||||
|
||||
@Test
|
||||
@Order(79)
|
||||
|
||||
@ -1,9 +1,9 @@
|
||||
easy-es:
|
||||
# enable: true
|
||||
address: 127.0.0.1:9200
|
||||
schema: https
|
||||
username: elastic
|
||||
password: a2*HFkQU93mBnxOTaEAs
|
||||
address: 192.168.0.18:9200
|
||||
# schema: https
|
||||
# username: elastic
|
||||
# password: a2*HFkQU93mBnxOTaEAs
|
||||
keep-alive-millis: 18000
|
||||
global-config:
|
||||
i-kun-mode: false
|
||||
@ -11,7 +11,7 @@ easy-es:
|
||||
async-process-index-blocking: true
|
||||
print-dsl: true
|
||||
db-config:
|
||||
map-underscore-to-camel-case: false
|
||||
map-underscore-to-camel-case: true
|
||||
id-type: customize
|
||||
field-strategy: not_empty
|
||||
refresh-policy: immediate
|
||||
|
||||
@ -10,6 +10,7 @@ import co.elastic.clients.elasticsearch.core.SearchRequest;
|
||||
import co.elastic.clients.elasticsearch.core.SearchResponse;
|
||||
import co.elastic.clients.json.JsonData;
|
||||
import co.elastic.clients.transport.rest_client.RestClientOptions;
|
||||
import org.dromara.easyes.common.constants.BaseEsConstants;
|
||||
import org.dromara.easyes.core.biz.EntityInfo;
|
||||
import org.dromara.easyes.core.biz.EsPageInfo;
|
||||
import org.dromara.easyes.core.biz.OrderByParam;
|
||||
@ -675,7 +676,7 @@ public class XmlScannerAllTest {
|
||||
wrapper.match(Document::getCreator, "老汉");
|
||||
List<OrderByParam> orderByParams = new ArrayList<>();
|
||||
OrderByParam orderByParam = new OrderByParam();
|
||||
orderByParam.setOrder("starNum");
|
||||
orderByParam.setOrder("star_num");
|
||||
orderByParam.setSort("DESC");
|
||||
orderByParams.add(orderByParam);
|
||||
wrapper.orderBy(orderByParams);
|
||||
@ -941,39 +942,39 @@ public class XmlScannerAllTest {
|
||||
}
|
||||
|
||||
// 4.删除
|
||||
// @Test
|
||||
// @Order(76)
|
||||
// public void testDeleteById() {
|
||||
// int count = documentMapper.deleteById("1");
|
||||
// Assertions.assertEquals(1, count);
|
||||
// }
|
||||
//
|
||||
// @Test
|
||||
// @Order(77)
|
||||
// public void testDeleteBatchIds() {
|
||||
// List<String> idList = Arrays.asList("2", "3", "4");
|
||||
// int count = documentMapper.deleteBatchIds(idList);
|
||||
// Assertions.assertEquals(3, count);
|
||||
// }
|
||||
//
|
||||
// @Test
|
||||
// @Order(78)
|
||||
// public void testDeleteByWrapper() {
|
||||
// LambdaEsQueryWrapper<Document> wrapper = new LambdaEsQueryWrapper<>();
|
||||
// wrapper.match(Document::getCreator, "老汉");
|
||||
//
|
||||
// int count = documentMapper.delete(wrapper);
|
||||
// Assertions.assertEquals(18, count);
|
||||
// }
|
||||
//
|
||||
// @Test
|
||||
// @Order(80)
|
||||
// public void testDeleteIndex() {
|
||||
// boolean deleted = documentMapper.deleteIndex(EntityInfoHelper.getEntityInfo(Document.class).getIndexName());
|
||||
// boolean lockDeleted = documentMapper.deleteIndex(BaseEsConstants.LOCK_INDEX);
|
||||
// Assertions.assertTrue(deleted);
|
||||
// Assertions.assertTrue(lockDeleted);
|
||||
// }
|
||||
@Test
|
||||
@Order(76)
|
||||
public void testDeleteById() {
|
||||
int count = documentMapper.deleteById("1");
|
||||
Assertions.assertEquals(1, count);
|
||||
}
|
||||
|
||||
@Test
|
||||
@Order(77)
|
||||
public void testDeleteBatchIds() {
|
||||
List<String> idList = Arrays.asList("2", "3", "4");
|
||||
int count = documentMapper.deleteBatchIds(idList);
|
||||
Assertions.assertEquals(3, count);
|
||||
}
|
||||
|
||||
@Test
|
||||
@Order(78)
|
||||
public void testDeleteByWrapper() {
|
||||
LambdaEsQueryWrapper<Document> wrapper = new LambdaEsQueryWrapper<>();
|
||||
wrapper.match(Document::getCreator, "老汉");
|
||||
|
||||
int count = documentMapper.delete(wrapper);
|
||||
Assertions.assertEquals(18, count);
|
||||
}
|
||||
|
||||
@Test
|
||||
@Order(80)
|
||||
public void testDeleteIndex() {
|
||||
boolean deleted = documentMapper.deleteIndex(EntityInfoHelper.getEntityInfo(Document.class).getIndexName());
|
||||
boolean lockDeleted = documentMapper.deleteIndex(BaseEsConstants.LOCK_INDEX);
|
||||
Assertions.assertTrue(deleted);
|
||||
Assertions.assertTrue(lockDeleted);
|
||||
}
|
||||
|
||||
@Test
|
||||
@Order(79)
|
||||
|
||||
@ -11,15 +11,13 @@
|
||||
|
||||
<bean id="easyEsProperties" class="org.dromara.easyes.common.property.EasyEsProperties">
|
||||
<property name="enable" value="true"/>
|
||||
<property name="address" value="192.168.1.16:30156"/>
|
||||
<property name="username" value="elastic"/>
|
||||
<property name="password" value="mg123456"/>
|
||||
<property name="address" value="192.168.0.18:9200"/>
|
||||
<property name="keepAliveMillis" value="18000"/>
|
||||
<property name="globalConfig.IKunMode" value="false"/>
|
||||
<property name="globalConfig.processIndexMode" value="MANUAL"/>
|
||||
<property name="globalConfig.asyncProcessIndexBlocking" value="true"/>
|
||||
<property name="globalConfig.printDsl" value="true"/>
|
||||
<property name="globalConfig.dbConfig.mapUnderscoreToCamelCase" value="false"/>
|
||||
<property name="globalConfig.dbConfig.mapUnderscoreToCamelCase" value="true"/>
|
||||
<property name="globalConfig.dbConfig.idType" value="CUSTOMIZE"/>
|
||||
<property name="globalConfig.dbConfig.fieldStrategy" value="NOT_EMPTY"/>
|
||||
<property name="globalConfig.dbConfig.refreshPolicy" value="IMMEDIATE"/>
|
||||
@ -32,6 +30,6 @@
|
||||
|
||||
<!-- easy-es配置 -->
|
||||
<bean id="mapperScannerConfigurer" class="org.dromara.easyes.spring.MapperScannerConfigurer">
|
||||
<property name="basePackage" value="org.dromara.easyes.test.mapper"/>
|
||||
<property name="basePackage" value="org.dromara.easyes.test.mapper,org.dromara.easyes.test.mapper2"/>
|
||||
</bean>
|
||||
</beans>
|
||||
@ -3,6 +3,7 @@ package org.dromara.easyes.spring;
|
||||
import lombok.Setter;
|
||||
import org.dromara.easyes.common.utils.EEVersionUtils;
|
||||
import org.dromara.easyes.common.utils.LogUtils;
|
||||
import org.dromara.easyes.common.utils.StringUtils;
|
||||
import org.dromara.easyes.spring.config.ClassPathMapperScanner;
|
||||
import org.springframework.beans.BeansException;
|
||||
import org.springframework.beans.PropertyValue;
|
||||
@ -63,7 +64,10 @@ public class MapperScannerConfigurer
|
||||
}
|
||||
PropertyValues values = mapperScannerBean.getPropertyValues();
|
||||
// 如果在环境变量中取扫描的包,需要从easy-es.mappers进行取值,与mybatis配置mapper相似,但这里不做配置推荐
|
||||
this.basePackage = getPropertyValue("easy-es.mappers", values);
|
||||
String propertyValue = getPropertyValue("easy-es.mappers", values);
|
||||
if (StringUtils.isNotBlank(propertyValue)) {
|
||||
this.basePackage = propertyValue;
|
||||
}
|
||||
}
|
||||
|
||||
// 取变量
|
||||
|
||||
@ -1,5 +1,6 @@
|
||||
package org.dromara.easyes.spring.annotation;
|
||||
|
||||
import org.dromara.easyes.common.constants.BaseEsConstants;
|
||||
import org.dromara.easyes.common.utils.LogUtils;
|
||||
import org.dromara.easyes.spring.MapperScannerConfigurer;
|
||||
import org.springframework.beans.factory.config.BeanDefinition;
|
||||
@ -12,6 +13,7 @@ import org.springframework.core.env.Environment;
|
||||
import org.springframework.core.type.AnnotationMetadata;
|
||||
import org.springframework.util.StringUtils;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
import java.util.stream.Collectors;
|
||||
@ -36,20 +38,30 @@ public class MapperScannerRegister implements ImportBeanDefinitionRegistrar, Env
|
||||
public void registerBeanDefinitions(AnnotationMetadata importingClassMetadata, BeanDefinitionRegistry registry) {
|
||||
AnnotationAttributes mapperScanAttrs = AnnotationAttributes
|
||||
.fromMap(importingClassMetadata.getAnnotationAttributes(EsMapperScan.class.getName()));
|
||||
List<String> basePackages = new ArrayList<>();
|
||||
// 默认已注解标记为主,如果没有则尝试寻找easy-es配置 scan
|
||||
if (mapperScanAttrs != null) {
|
||||
List<String> basePackages = Arrays.stream(mapperScanAttrs.getStringArray("value"))
|
||||
.filter(StringUtils::hasText)
|
||||
.map(map -> {
|
||||
// 判断是否需要处理${}变量
|
||||
if (map.contains("${") && map.contains("}")) {
|
||||
String basePackage = this.environment.resolvePlaceholders(map);
|
||||
LogUtils.formatInfo("Scan Easy-Es Mapper[%s -> %s]", map, basePackage);
|
||||
return basePackage;
|
||||
}
|
||||
return map;
|
||||
})
|
||||
.collect(Collectors.toList());
|
||||
basePackages = Arrays.stream(mapperScanAttrs.getStringArray("value"))
|
||||
.filter(StringUtils::hasText)
|
||||
.map(map -> {
|
||||
// 判断是否需要处理${}变量
|
||||
if (map.contains("${") && map.contains("}")) {
|
||||
String basePackage = this.environment.resolvePlaceholders(map);
|
||||
LogUtils.formatInfo("Scan Easy-Es Mapper[%s -> %s]", map, basePackage);
|
||||
return basePackage;
|
||||
}
|
||||
return map;
|
||||
})
|
||||
.collect(Collectors.toList());
|
||||
} else {
|
||||
// 如果在环境变量中取扫描的包,需要从easy-es.mappers进行取值,与mybatis配置mapper相似,但这里不做配置推荐
|
||||
String propertyValue = this.environment.getProperty("easy-es.mappers", String.class, BaseEsConstants.EMPTY_STR);
|
||||
if (org.dromara.easyes.common.utils.StringUtils.isNotBlank(propertyValue)) {
|
||||
basePackages = Arrays.asList(propertyValue.split(COMMA));
|
||||
}
|
||||
}
|
||||
// 如果扫描的包不为空,则进行mapperInterface的注册
|
||||
if (!basePackages.isEmpty()) {
|
||||
// 注册bean
|
||||
registerBeanDefinitions(registry, generateBaseBeanName(importingClassMetadata),
|
||||
StringUtils.toStringArray(basePackages));
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
package org.dromara.easyes.test.mapper;
|
||||
package org.dromara.easyes.test.mapper2;
|
||||
|
||||
|
||||
import org.dromara.easyes.core.kernel.BaseEsMapper;
|
||||
@ -1,4 +1,4 @@
|
||||
package org.dromara.easyes.test.mapper;
|
||||
package org.dromara.easyes.test.mapper3;
|
||||
|
||||
|
||||
import org.dromara.easyes.core.kernel.BaseEsMapper;
|
||||
@ -10,7 +10,7 @@ import org.springframework.boot.autoconfigure.SpringBootApplication;
|
||||
* Copyright © 2021 xpc1024 All Rights Reserved
|
||||
**/
|
||||
@SpringBootApplication
|
||||
@EsMapperScan("org.dromara.easyes.test.mapper")
|
||||
@EsMapperScan({"org.dromara.easyes.test.mapper", "org.dromara.easyes.test.mapper2", "org.dromara.easyes.test.mapper3"})
|
||||
public class TestEasyEsApplication {
|
||||
public static void main(String[] args) {
|
||||
SpringApplication.run(TestEasyEsApplication.class, args);
|
||||
|
||||
@ -10,6 +10,7 @@ import co.elastic.clients.elasticsearch.core.SearchRequest;
|
||||
import co.elastic.clients.elasticsearch.core.SearchResponse;
|
||||
import co.elastic.clients.json.JsonData;
|
||||
import co.elastic.clients.transport.rest_client.RestClientOptions;
|
||||
import org.dromara.easyes.common.constants.BaseEsConstants;
|
||||
import org.dromara.easyes.core.biz.EntityInfo;
|
||||
import org.dromara.easyes.core.biz.EsPageInfo;
|
||||
import org.dromara.easyes.core.biz.OrderByParam;
|
||||
@ -942,40 +943,40 @@ public class AllTest {
|
||||
Assertions.assertTrue(success);
|
||||
}
|
||||
|
||||
// // 4.删除
|
||||
// @Test
|
||||
// @Order(76)
|
||||
// public void testDeleteById() {
|
||||
// int count = documentMapper.deleteById("1");
|
||||
// Assertions.assertEquals(1, count);
|
||||
// }
|
||||
//
|
||||
// @Test
|
||||
// @Order(77)
|
||||
// public void testDeleteBatchIds() {
|
||||
// List<String> idList = Arrays.asList("2", "3", "4");
|
||||
// int count = documentMapper.deleteBatchIds(idList);
|
||||
// Assertions.assertEquals(3, count);
|
||||
// }
|
||||
//
|
||||
// @Test
|
||||
// @Order(78)
|
||||
// public void testDeleteByWrapper() {
|
||||
// LambdaEsQueryWrapper<Document> wrapper = new LambdaEsQueryWrapper<>();
|
||||
// wrapper.match(Document::getCreator, "老汉");
|
||||
//
|
||||
// int count = documentMapper.delete(wrapper);
|
||||
// Assertions.assertEquals(18, count);
|
||||
// }
|
||||
//
|
||||
// @Test
|
||||
// @Order(80)
|
||||
// public void testDeleteIndex() {
|
||||
// boolean deleted = documentMapper.deleteIndex(EntityInfoHelper.getEntityInfo(Document.class).getIndexName());
|
||||
// boolean lockDeleted = documentMapper.deleteIndex(BaseEsConstants.LOCK_INDEX);
|
||||
// Assertions.assertTrue(deleted);
|
||||
// Assertions.assertTrue(lockDeleted);
|
||||
// }
|
||||
// 4.删除
|
||||
@Test
|
||||
@Order(76)
|
||||
public void testDeleteById() {
|
||||
int count = documentMapper.deleteById("1");
|
||||
Assertions.assertEquals(1, count);
|
||||
}
|
||||
|
||||
@Test
|
||||
@Order(77)
|
||||
public void testDeleteBatchIds() {
|
||||
List<String> idList = Arrays.asList("2", "3", "4");
|
||||
int count = documentMapper.deleteBatchIds(idList);
|
||||
Assertions.assertEquals(3, count);
|
||||
}
|
||||
|
||||
@Test
|
||||
@Order(78)
|
||||
public void testDeleteByWrapper() {
|
||||
LambdaEsQueryWrapper<Document> wrapper = new LambdaEsQueryWrapper<>();
|
||||
wrapper.match(Document::getCreator, "老汉");
|
||||
|
||||
int count = documentMapper.delete(wrapper);
|
||||
Assertions.assertEquals(18, count);
|
||||
}
|
||||
|
||||
@Test
|
||||
@Order(80)
|
||||
public void testDeleteIndex() {
|
||||
boolean deleted = documentMapper.deleteIndex(EntityInfoHelper.getEntityInfo(Document.class).getIndexName());
|
||||
boolean lockDeleted = documentMapper.deleteIndex(BaseEsConstants.LOCK_INDEX);
|
||||
Assertions.assertTrue(deleted);
|
||||
Assertions.assertTrue(lockDeleted);
|
||||
}
|
||||
|
||||
@Test
|
||||
@Order(79)
|
||||
|
||||
@ -10,8 +10,8 @@ import org.dromara.easyes.test.entity.Author;
|
||||
import org.dromara.easyes.test.entity.Comment;
|
||||
import org.dromara.easyes.test.entity.Contact;
|
||||
import org.dromara.easyes.test.entity.Document;
|
||||
import org.dromara.easyes.test.mapper.AuthorMapper;
|
||||
import org.dromara.easyes.test.mapper.CommentMapper;
|
||||
import org.dromara.easyes.test.mapper2.AuthorMapper;
|
||||
import org.dromara.easyes.test.mapper3.CommentMapper;
|
||||
import org.dromara.easyes.test.mapper.ContactMapper;
|
||||
import org.dromara.easyes.test.mapper.DocumentMapper;
|
||||
import org.junit.jupiter.api.*;
|
||||
|
||||
@ -0,0 +1,18 @@
|
||||
package org.dromara.easyes.test.mapper;
|
||||
|
||||
import org.dromara.easyes.spring.annotation.EsMapperScan;
|
||||
import org.springframework.boot.SpringApplication;
|
||||
import org.springframework.boot.autoconfigure.SpringBootApplication;
|
||||
|
||||
/**
|
||||
* 启动类
|
||||
* <p>
|
||||
* Copyright © 2021 xpc1024 All Rights Reserved
|
||||
**/
|
||||
@SpringBootApplication
|
||||
@EsMapperScan({"org.dromara.easyes.test.mapper", "org.dromara.easyes.test.mapper2", "org.dromara.easyes.test.mapper3"})
|
||||
public class MapperScanEsApplication {
|
||||
public static void main(String[] args) {
|
||||
SpringApplication.run(MapperScanEsApplication.class, args);
|
||||
}
|
||||
}
|
||||
@ -0,0 +1,72 @@
|
||||
package org.dromara.easyes.test.mapper;
|
||||
|
||||
import org.dromara.easyes.common.constants.BaseEsConstants;
|
||||
import org.dromara.easyes.core.toolkit.EntityInfoHelper;
|
||||
import org.dromara.easyes.test.TestEasyEsApplication;
|
||||
import org.dromara.easyes.test.entity.Document;
|
||||
import org.dromara.easyes.test.mapper2.AuthorMapper;
|
||||
import org.dromara.easyes.test.mapper3.CommentMapper;
|
||||
import org.junit.jupiter.api.*;
|
||||
import org.springframework.boot.test.context.SpringBootTest;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
|
||||
/**
|
||||
* @author MoJie
|
||||
* @since 2.0
|
||||
*/
|
||||
@DisplayName("easy-es多包扫描单元测试")
|
||||
@TestMethodOrder(MethodOrderer.OrderAnnotation.class)
|
||||
@SpringBootTest(classes = MapperScanEsApplication.class)
|
||||
public class MapperScanTest {
|
||||
|
||||
@Resource
|
||||
private ContactMapper contactMapper;
|
||||
@Resource
|
||||
private AuthorMapper authorMapper;
|
||||
@Resource
|
||||
private CommentMapper commentMapper;
|
||||
|
||||
@Test
|
||||
@Order(0)
|
||||
public void testCreateIndex1() {
|
||||
boolean success = contactMapper.createIndex();
|
||||
Assertions.assertTrue(success);
|
||||
}
|
||||
|
||||
@Test
|
||||
@Order(1)
|
||||
public void testDeleteIndex1() {
|
||||
boolean deleted = contactMapper.deleteIndex();
|
||||
Assertions.assertTrue(deleted);
|
||||
}
|
||||
|
||||
@Test
|
||||
@Order(2)
|
||||
public void testCreateIndex2() {
|
||||
boolean success = authorMapper.createIndex();
|
||||
Assertions.assertTrue(success);
|
||||
}
|
||||
|
||||
@Test
|
||||
@Order(3)
|
||||
public void testDeleteIndex2() {
|
||||
boolean success = authorMapper.deleteIndex();
|
||||
Assertions.assertTrue(success);
|
||||
}
|
||||
|
||||
@Test
|
||||
@Order(4)
|
||||
public void testCreateIndex3() {
|
||||
boolean success = commentMapper.createIndex();
|
||||
Assertions.assertTrue(success);
|
||||
}
|
||||
|
||||
@Test
|
||||
@Order(5)
|
||||
public void testDeleteIndex3() {
|
||||
boolean success = commentMapper.deleteIndex();
|
||||
Assertions.assertTrue(success);
|
||||
}
|
||||
|
||||
}
|
||||
@ -0,0 +1,68 @@
|
||||
package org.dromara.easyes.test.mapper;
|
||||
|
||||
import org.dromara.easyes.test.mapper2.AuthorMapper;
|
||||
import org.dromara.easyes.test.mapper3.CommentMapper;
|
||||
import org.junit.jupiter.api.*;
|
||||
import org.springframework.boot.test.context.SpringBootTest;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
|
||||
/**
|
||||
* @author MoJie
|
||||
* @since 2.0
|
||||
*/
|
||||
@DisplayName("easy-es多包扫描单元测试")
|
||||
@TestMethodOrder(MethodOrderer.OrderAnnotation.class)
|
||||
@SpringBootTest(classes = PattenScanEsApplication.class)
|
||||
public class PattenMapperScanTest {
|
||||
|
||||
@Resource
|
||||
private ContactMapper contactMapper;
|
||||
@Resource
|
||||
private AuthorMapper authorMapper;
|
||||
@Resource
|
||||
private CommentMapper commentMapper;
|
||||
|
||||
@Test
|
||||
@Order(0)
|
||||
public void testCreateIndex1() {
|
||||
boolean success = contactMapper.createIndex();
|
||||
Assertions.assertTrue(success);
|
||||
}
|
||||
|
||||
@Test
|
||||
@Order(1)
|
||||
public void testDeleteIndex1() {
|
||||
boolean deleted = contactMapper.deleteIndex();
|
||||
Assertions.assertTrue(deleted);
|
||||
}
|
||||
|
||||
@Test
|
||||
@Order(2)
|
||||
public void testCreateIndex2() {
|
||||
boolean success = authorMapper.createIndex();
|
||||
Assertions.assertTrue(success);
|
||||
}
|
||||
|
||||
@Test
|
||||
@Order(3)
|
||||
public void testDeleteIndex2() {
|
||||
boolean success = authorMapper.deleteIndex();
|
||||
Assertions.assertTrue(success);
|
||||
}
|
||||
|
||||
@Test
|
||||
@Order(4)
|
||||
public void testCreateIndex3() {
|
||||
boolean success = commentMapper.createIndex();
|
||||
Assertions.assertTrue(success);
|
||||
}
|
||||
|
||||
@Test
|
||||
@Order(5)
|
||||
public void testDeleteIndex3() {
|
||||
boolean success = commentMapper.deleteIndex();
|
||||
Assertions.assertTrue(success);
|
||||
}
|
||||
|
||||
}
|
||||
@ -0,0 +1,18 @@
|
||||
package org.dromara.easyes.test.mapper;
|
||||
|
||||
import org.dromara.easyes.spring.annotation.EsMapperScan;
|
||||
import org.springframework.boot.SpringApplication;
|
||||
import org.springframework.boot.autoconfigure.SpringBootApplication;
|
||||
|
||||
/**
|
||||
* 启动类
|
||||
* <p>
|
||||
* Copyright © 2021 xpc1024 All Rights Reserved
|
||||
**/
|
||||
@SpringBootApplication
|
||||
@EsMapperScan({"org.dromara.easyes.test.*"})
|
||||
public class PattenScanEsApplication {
|
||||
public static void main(String[] args) {
|
||||
SpringApplication.run(PattenScanEsApplication.class, args);
|
||||
}
|
||||
}
|
||||
Loading…
x
Reference in New Issue
Block a user