refactor: 增加随机ID生成器

This commit is contained in:
zhouhao
2024-12-02 18:15:19 +08:00
parent 988feffcf2
commit cae93f9780
3 changed files with 33 additions and 4 deletions

View File

@@ -24,10 +24,7 @@ import org.hswebframework.web.crud.entity.factory.EntityMappingCustomizer;
import org.hswebframework.web.crud.entity.factory.MapperEntityFactory;
import org.hswebframework.web.crud.events.*;
import org.hswebframework.web.crud.events.expr.SpelSqlExpressionInvoker;
import org.hswebframework.web.crud.generator.CurrentTimeGenerator;
import org.hswebframework.web.crud.generator.DefaultIdGenerator;
import org.hswebframework.web.crud.generator.MD5Generator;
import org.hswebframework.web.crud.generator.SnowFlakeStringIdGenerator;
import org.hswebframework.web.crud.generator.*;
import org.hswebframework.web.crud.query.DefaultQueryHelper;
import org.hswebframework.web.crud.query.QueryHelper;
import org.springframework.beans.BeansException;
@@ -157,6 +154,11 @@ public class EasyormConfiguration {
return new SnowFlakeStringIdGenerator();
}
@Bean
public RandomIdGenerator randomIdGenerator() {
return new RandomIdGenerator();
}
@Bean
public CurrentTimeGenerator currentTimeGenerator() {
return new CurrentTimeGenerator();

View File

@@ -23,5 +23,9 @@ public interface Generators {
*/
String CURRENT_TIME = "current_time";
/**
* @see org.hswebframework.web.id.RandomIdGenerator
*/
String RANDOM = "random";
}

View File

@@ -0,0 +1,23 @@
package org.hswebframework.web.crud.generator;
import org.hswebframework.ezorm.core.DefaultValueGenerator;
import org.hswebframework.ezorm.core.RuntimeDefaultValue;
import org.hswebframework.ezorm.rdb.metadata.RDBColumnMetadata;
import org.hswebframework.web.id.IDGenerator;
public class RandomIdGenerator implements DefaultValueGenerator<RDBColumnMetadata> {
@Override
public String getSortId() {
return Generators.RANDOM;
}
@Override
public RuntimeDefaultValue generate(RDBColumnMetadata metadata) {
return IDGenerator.RANDOM::generate;
}
@Override
public String getName() {
return "Random";
}
}