import java.util.Arrays;
import java.util.Map;
import java.util.function.Function;
import java.util.stream.Collectors;
public interface DataTypeEnums {
/**
* 获取数据类型转数据库
*/
enum ToDatabaseTypeEnum {
TO_VARCHAR("string","VARCHAR"),
TO_DATE("date","DATE") ,
BOOLEAN_TO_SMALLINT("boolean","SMALLINT"),
TO_BIGINT("Long","BIGINT"),
TO_INTEGER("int","INTEGER"),
//下面主要是已转的再转一下
TIMESTAMP("TIMESTAMP","TIMESTAMP"),
SMALLINT("SMALLINT","SMALLINT"),
VARCHAR("VARCHAR","VARCHAR"),
DATE("DATE","DATE") ,
BIGINT("BIGINT","BIGINT") ,;
private final static Map<String, ToDatabaseTypeEnum> MAPPING = Arrays.stream(values())
.collect(Collectors.toMap(ToDatabaseTypeEnum::getType, Function.identity()));
final String type;
final String value;
ToDatabaseTypeEnum(String type, String value) {
this.type = type;
this.value = value;
}
public String getType() {
return type;
}
public String getValue() {
return value;
}
/**
* 获取枚举是否存在,并返回
*
* @param type 类型
* @return
*/
public static ToDatabaseTypeEnum getEnum(String type) {
return MAPPING.get(type);
}
}
/**
* 从数据库类型转Java类
*/
enum ToEntityTypeEnum {
TO_STRING("VARCHAR","String"),
TO_LOCAL_DATE("DATE","LocalDate"),
TO_LOCAL_DATE_TIME("TIMESTAMP","LocalDateTime"),
TO_LONG("BIGINT","Long"),
SMALLINT_TO_INTRGRT("SMALLINT","Integer"),
TO_INTEGER("INTEGER","Integer"),
;
private final static Map<String, ToEntityTypeEnum> MAPPING = Arrays.stream(values())
.collect(Collectors.toMap(ToEntityTypeEnum::getType, Function.identity()));
final String type;
final String value;
ToEntityTypeEnum(String type, String value) {
this.type = type;
this.value = value;
}
public String getType() {
return type;
}
public String getValue() {
return value;
}
/**
* 获取枚举是否存在,并返回
*
* @param type 类型
* @return
*/
public static ToEntityTypeEnum getEnum(String type) {
return MAPPING.get(type);
}
}
}
类型转换枚举
最新推荐文章于 2024-05-03 11:29:32 发布