package com.dynamic.data.demo.util;
import java.math.BigDecimal;
import java.math.BigInteger;
import java.nio.ByteBuffer;
import java.nio.charset.Charset;
import java.text.NumberFormat;
import java.util.Set;
/**
* 类型转换器
*
* @author xx
*/
public class Convert
{
/**
* 转换为字符串<br>
* 如果给定的值为null,或者转换失败,返回默认值<br>
* 转换失败不会报错
*
* @param value 被转换的值
* @param defaultValue 转换错误时的默认值
* @return 结果
*/
public static String toStr(Object value, String defaultValue)
{
if (null == value)
{
return defaultValue;
}
if (value instanceof String)
{
return (String) value;
}
return value.toString();
}
/**
* 转换为字符串<br>
* 如果给定的值为<code>null</code>,或者转换失败,返回默认值<code>null</code><br>
* 转换失败不会报错
*
* @param value 被转换的值
* @return 结果
*/
public static String toStr(Object value)
{
return toStr(value, null);
}
/**
* 转换为字符<br>
* 如果给定的值为null,或者转换失败,返回默认值<br>
* 转换失败不会报错
*
* @param value 被转换的值
* @param defaultValue 转换错误时的默认值
* @return 结果
*/
public static Character toChar(Object value, Character defaultValue)
{
if (null == value)
{
return defaultValue;
}
if (value instanceof Character)
{
return (Character) value;
}
final String valueStr = toStr(value, null);
return StringUtils.isEmpty(valueStr) ? defaultValue : valueStr.charAt(0);
}
/**
* 转换为字符<br>
* 如果给定的值为<code>null</code>,或者转换失败,返回默认值<code>null</code><br>
* 转换失败不会报错
*
* @param value 被转换的值
* @return 结果
*/
public static Character toChar(Object value)
{
return toChar(value, null);
}
/**
* 转换为byte<br>
* 如果给定的值为<code>null</code>,或者转换失败,返回默认值<br>
* 转换失败不会报错
*
* @param value 被转换的值
* @param defaultValue 转换错误时的默认值
* @return 结果
*/
public static Byte toByte(Object value, Byte defaultValue)
{
if (value == null)
{
return defaultValue;
}
if (value instanceof Byte)
{
return (Byte) value;
}
if (value instanceof Number)
{
return ((Number) value).byteValue();
}
final String valueStr = toStr(value, null);
if (StringUtils.isEmpty(valueStr))
{
return defaultValue;
}
try
{
return Byte.parseByte(valueStr);
}
catch (Exception e)
{
return defaultValue;
}
}
/**
* 转换为byte<br>
* 如果给定的值为<code>null</code>,或者转换失败,返回默认值<code>null</code><br>
* 转换失败不会报错
*
* @param value 被转换的值
* @return 结果
*/
public static Byte toByte(Object value)
{
return toByte(value, null);
}
/**
* 转换为Short<br>
* 如果给定的值为<code>null</code>,或者转换失败,返回默认值<br>
* 转换失败不会报错
*
* @param value 被转换的值
* @param defaultValue 转换错误时的默认值
* @return 结果
*/
public static Short toShort(Object value, Short defaultValue)
{
if (value == null)
{
return defaultValue;
}
if (value instanceof Short)
{
return (Short) value;
}
if (value instanceof Number)
{
return ((Number) value).shortValue();
}
final String valueStr = toStr(value, null);
if (StringUtils.isEmpty(valueStr))
{
return defaultValue;
}
try
{
return Short.parseShort(valueStr.trim());
}
catch (Exception e)
{
return defaultValue;
}
}
/**
* 转换为Short<br>
* 如果给定的值为<code>null</code>,或者转换失败,返回默认值<code>null</code><br>
* 转换失败不会报错
*
* @param value 被转换的值
* @return 结果
*/
public static Short toShort(Object value)
{
return toShort(value, null);
}
/**
* 转换为Number<br>
* 如果给定的值为空,或者转换失败,返回默认值<br>
* 转换失败不会报错
*
* @param value 被转换的值
* @param defaultValue 转换错误时的默认值
* @return 结果
*/
public static Number toNumber(Object value, Number defaultValue)
{
if (value == null)
{
return defaultValue;
}
if (value instanceof Number)
{
return (Number) value;
}
final String valueStr = toStr(value, null);
if (StringUtils.isEmpty(valueStr))
{
return defaultValue;
}
try
{
return NumberFormat.getInstance().parse(valueStr);
}
catch (Exception e)
{
return defaultValue;
}
}
/**
* 转换为Number<br>
* 如果给定的值为空,或者转换失败,返回默认值<code>null</code><br>
* 转换失败不会报错
*
* @param value 被转换的值
* @return 结果
*/
public static Number toNumber(Object value)
{
return toNumber(value, null);
}
/**
* 转换为int<br>
* 如果给定的值为空,或者转换失败,返回默认值<br>
* 转换失败不会报错
*
* @param value 被转换的值
* @param defaultValue 转换错误时的默认值
* @return 结果
*/
public static Integer toInt(Object value, Integer defaultValue)
{
if (value == null)
{
return defaultValue;
}
if (value instanceof Integer)
{
return (Integer) value;
}
if (value instanceof Number)
{
return ((Number) value).intValue();
}
final String valueStr = toStr(value, null);
if (StringUtils.isEmpty(valueStr))
{
return defaultValue;
}
try
{
return Integer.parseInt(valueStr.trim());
}
catch (Exception e)
{
return defaultValue;
}
}
/**
* 转换为int<br>
* 如果给定的值为<code>null</code>,或者转换失败,返回默认值<code>null</code><br>
* 转换失败不会报错
*
* @param value 被转换的值
* @return 结果
*/
public static Integer toInt(Object value)
{
return toInt(value, null);
}
/**
* 转换为Integer数组<br>
*
* @param str 被转换的值
* @return 结果
*/
public static Integer[] toIntArray(String str)
{
return toIntArray(",", str);
}
/**
* 转换为Long数组<br>
*
* @param str 被转换的值
* @return 结果
*/
public static Long[] toLongArray(String str)
{
return toLongArray(",", str);
}
/**
* 转换为Integer数组<br>
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
导入流程 1、用户前端UI点击上传excel文件,调用/general/importToRedis,解析excel数据和表头,分别储存到redis中,返回数据和表头对应的redis_key,并返回原始文件“导入文件表头字段:key=cell-index,value=cell-cnName”。 2、用户前端UI点击下一步操作,调用/general/localModel获取项目本地数据模型,用户连线导入表头列与本地模型的映射关系,调用/general/bindingToPo绑定导入数据与本地模型并存储到redis,返回绑定成功的redis_key和绑定失败的数据文件的访问地址。 3、用户前端UI点击下一步,调用/general/pageRedisData获取绑定成功的分页数据显示。 4、用户前端UI点击完成,调用项目本地模型导入接口,将绑定成功的数据具体落地到DB中持久存储。 代码说明: 1、本项目为后端项目,不含前端UI。 2、项目要依赖redis和文件系统,文件系统建议minio。
资源推荐
资源详情
资源评论
收起资源包目录
java后端动态资源匹配导入示例源码 (156个子文件)
.gitignore 395B
.gitignore 227B
index.html 79B
dynamic-data.iml 14KB
Convert.java 26KB
RedisUtil.java 15KB
StringUtils.java 13KB
IGeneralService.java 11KB
GeneralServiceImpl.java 11KB
ServletUtils.java 8KB
GeneralController.java 4KB
PageDomain.java 2KB
ImportOriginalListener.java 2KB
TableSupport.java 1KB
TableDataInfo.java 1KB
ExcelConstant.java 1KB
RedisBindingParam.java 1KB
LocalFieldModel.java 997B
AdsModelMapping.java 992B
ResultOfRedisModel.java 901B
RedisConstant.java 778B
LocalModel.java 752B
ResultOfBindingModel.java 687B
DynamicDataApplication.java 336B
AdsModelMappingMapper.java 267B
IAdsModelMappingService.java 259B
DynamicDataApplicationTests.java 227B
HELP.md 853B
application.properties 50B
pom.xml 4KB
workspace.xml 3KB
Project_Default.xml 1KB
jarRepositories.xml 870B
Maven__org_springframework_boot_spring_boot_starter_data_redis_2_3_12_RELEASE.xml 773B
Maven__org_springframework_boot_spring_boot_test_autoconfigure_2_3_12_RELEASE.xml 773B
Maven__org_springframework_boot_spring_boot_starter_logging_2_3_12_RELEASE.xml 752B
Maven__org_springframework_boot_spring_boot_starter_tomcat_2_3_12_RELEASE.xml 745B
Maven__org_springframework_boot_spring_boot_autoconfigure_2_3_12_RELEASE.xml 738B
Maven__com_fasterxml_jackson_module_jackson_module_parameter_names_2_11_4.xml 733B
Maven__org_springframework_boot_spring_boot_starter_jdbc_2_3_12_RELEASE.xml 731B
Maven__org_springframework_boot_spring_boot_starter_test_2_3_12_RELEASE.xml 731B
Maven__org_springframework_boot_spring_boot_starter_json_2_3_12_RELEASE.xml 731B
Maven__org_springframework_boot_spring_boot_starter_web_2_3_12_RELEASE.xml 724B
Maven__com_vaadin_external_google_android_json_0_0_20131108_vaadin1.xml 697B
Maven__org_springframework_spring_context_support_5_2_15_RELEASE.xml 697B
Maven__org_springframework_data_spring_data_keyvalue_2_3_9_RELEASE.xml 696B
Maven__org_springframework_boot_spring_boot_starter_2_3_12_RELEASE.xml 696B
Maven__com_fasterxml_jackson_datatype_jackson_datatype_jsr310_2_11_4.xml 692B
Maven__org_springframework_data_spring_data_commons_2_3_9_RELEASE.xml 689B
Maven__com_fasterxml_jackson_datatype_jackson_datatype_jdk8_2_11_4.xml 678B
Maven__org_springframework_boot_spring_boot_test_2_3_12_RELEASE.xml 675B
Maven__org_springframework_data_spring_data_redis_2_3_9_RELEASE.xml 675B
Maven__org_springframework_spring_expression_5_2_15_RELEASE.xml 662B
Maven__org_apache_tomcat_embed_tomcat_embed_websocket_9_0_46.xml 657B
compiler.xml 651B
Maven__com_fasterxml_jackson_core_jackson_annotations_2_11_4.xml 648B
Maven__org_springframework_spring_context_5_2_15_RELEASE.xml 641B
Maven__org_springframework_boot_spring_boot_2_3_12_RELEASE.xml 640B
Maven__org_springframework_spring_webmvc_5_2_15_RELEASE.xml 634B
Maven__org_jetbrains_kotlin_kotlin_stdlib_common_1_3_72.xml 631B
Maven__org_junit_platform_junit_platform_commons_1_6_3.xml 630B
Maven__jakarta_activation_jakarta_activation_api_1_2_2.xml 630B
Maven__jakarta_annotation_jakarta_annotation_api_1_3_5.xml 630B
Maven__org_springframework_spring_beans_5_2_15_RELEASE.xml 627B
Maven__com_baomidou_mybatis_plus_boot_starter_3_5_2.xml 627B
Maven__com_fasterxml_jackson_core_jackson_databind_2_11_4.xml 627B
Maven__org_junit_platform_junit_platform_engine_1_6_3.xml 623B
Maven__org_apache_tomcat_embed_tomcat_embed_core_9_0_46.xml 622B
Maven__com_sun_istack_istack_commons_runtime_3_0_12.xml 621B
Maven__org_springframework_spring_test_5_2_15_RELEASE.xml 620B
Maven__org_springframework_spring_core_5_2_15_RELEASE.xml 620B
Maven__org_springframework_spring_jdbc_5_2_15_RELEASE.xml 620B
Maven__io_projectreactor_reactor_core_3_3_17_RELEASE.xml 619B
Maven__org_jetbrains_kotlin_kotlin_stdlib_jdk8_1_3_72.xml 617B
Maven__org_jetbrains_kotlin_kotlin_stdlib_jdk7_1_3_72.xml 617B
Maven__org_springframework_spring_jcl_5_2_15_RELEASE.xml 613B
Maven__com_baomidou_mybatis_plus_annotation_3_5_2.xml 613B
Maven__org_springframework_spring_aop_5_2_15_RELEASE.xml 613B
Maven__org_springframework_spring_web_5_2_15_RELEASE.xml 613B
Maven__org_springframework_spring_oxm_5_2_15_RELEASE.xml 613B
Maven__org_junit_jupiter_junit_jupiter_params_5_6_3.xml 612B
Maven__org_junit_jupiter_junit_jupiter_engine_5_6_3.xml 612B
Maven__org_junit_vintage_junit_vintage_engine_5_6_3.xml 612B
Maven__jakarta_xml_bind_jakarta_xml_bind_api_2_3_3.xml 608B
Maven__javax_validation_validation_api_2_0_1_Final.xml 608B
Maven__org_springframework_spring_tx_5_2_15_RELEASE.xml 606B
Maven__com_baomidou_mybatis_plus_extension_3_5_2.xml 606B
Maven__org_apache_logging_log4j_log4j_to_slf4j_2_13_3.xml 605B
Maven__org_apache_commons_commons_collections4_4_4.xml 602B
Maven__com_sun_activation_jakarta_activation_1_2_2.xml 602B
Maven__com_fasterxml_jackson_core_jackson_core_2_11_4.xml 599B
Maven__org_mockito_mockito_junit_jupiter_3_3_3.xml 595B
Maven__org_reactivestreams_reactive_streams_1_0_3.xml 592B
Maven__org_junit_jupiter_junit_jupiter_api_5_6_3.xml 591B
Maven__io_netty_netty_transport_4_1_65_Final.xml 590B
Maven__io_lettuce_lettuce_core_5_3_7_RELEASE.xml 584B
Maven__io_swagger_swagger_annotations_1_6_10.xml 584B
Maven__io_netty_netty_resolver_4_1_65_Final.xml 583B
Maven__net_bytebuddy_byte_buddy_agent_1_10_22.xml 582B
Maven__org_jetbrains_kotlin_kotlin_stdlib_1_3_72.xml 582B
共 156 条
- 1
- 2
资源评论
mister-big
- 粉丝: 1982
- 资源: 15
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功