首页 > 其他分享 >若依框架数据导入功能

若依框架数据导入功能

时间:2024-05-31 18:33:39浏览次数:19  
标签:getMac successMsg 框架 若依 successNum 导入 failureNum data

@Autowired
protected Validator validator;

@Override
public String importData(List list, boolean updateSupport) {
//TODO:修改T为实际数据对象
if (CollectionUtils.isEmpty(list)){
throw new ServiceException("导入数据不能为空!");
}

int successNum = 0;
int failureNum = 0;
StringBuilder successMsg = new StringBuilder();
StringBuilder failureMsg = new StringBuilder();
for (GatewayData data : list) {
    try {
        //检查要添加的数据是否已经在库中存在
        GatewayData mac = gatewayDataMapper.selectGatewayDataByMac(data.getMac());
        if (Objects.isNull(mac)){
            BeanValidators.validateWithException(validator,data);
            data.setCreateBy(operName);
            gatewayDataMapper.insertGatewayData(data);
            successNum++;
            successMsg.append("<br/>" + successNum + "、mac: " + data.getMac() + " 导入成功");
        }else if (updateSupport){
            BeanValidators.validateWithException(validator,data);
            data.setCreateBy(operName);
            gatewayDataMapper.updateGatewayData(data);
            successNum++;
            successMsg.append("<br/>" + successNum + "、mac: " + data.getMac() + " 更新成功");
        }else {
            failureNum++;
            failureMsg.append("<br/>" + successNum + "、mac: " + data.getMac() + " 已存在");
        }
    } catch (Exception e) {
        failureNum++;
        String msg = "<br/>" + failureNum + "、账号 " + data.getMac() + " 导入失败:";
        failureMsg.append(msg + e.getMessage());
        logger.error(msg,e);
    }
}

if (failureNum > 0 ){
    failureMsg.insert(0,"很抱歉,导入失败,共 "+failureNum+" 条数据格式不正确,错误如下:");
    throw new ServiceException(failureMsg.toString());
}else {
    successMsg.insert(0, "恭喜您,数据已全部导入成功!共 " + successNum + " 条,数据如下:");
}
//TODO:此处可在导入完成后,做相应处理
return successMsg.toString();

}

标签:getMac,successMsg,框架,若依,successNum,导入,failureNum,data
From: https://www.cnblogs.com/jundong2177/p/18225104

相关文章

  • 第二站:Java蓝——集合框架的深邃海洋
    Java蓝——集合框架的深邃海洋在Java的多彩旅程中,第二站“Java蓝”引领我们深入探索集合框架的深邃海洋。集合框架是Java提供的一套设计良好的API,用于存储、操作和管理数据集合,如列表、集合、映射等。它以高度抽象的方式,为开发者提供了极大的灵活性和高效的数据处理能力。下面......
  • 基于对比稀疏扰动技术的时间序列解释框架 ContraLSP
    开篇近日,由阿里云计算平台大数据基础工程技术团队主导,与南京大学、宾夕法尼亚州立大学、清华大学等高校合作,解释时间序列预测模型的论文《ExplainingTimeSeriesviaContrastiveandLocallySparsePerturbations》被机器学习领域顶会ICLR2024接收。该论文提出了一种创新的基......
  • pytest + yaml 框架 - 70.Pycharm 设置 yaml 格式用例模板,高效写用例
    前言初学者对yaml格式不太熟悉,自己写yaml用例的时候,总是格式对不齐,或者有些关键字会忘记。于是我们可以在pycharm上设置用例模块,通过快捷方式调用出对应的模块,达到高效写用例的目的。pycharm设置用例模板File-SettingsLiveTemplates-python点+号选择LiveTempl......
  • 【python深度学习】——大型工程项目管理以及互相导入
    【python深度学习】——大型工程项目管理以及互相导入1.工程项目中常见的文件组织形式2.python中的“包”、“模块”、与__init__.py2.1概念理解2.2\__init__py的使用3.包的导入——相对导入与绝对导入3.1相对导入3.1.1相对导入的语法3.1.2相对......
  • 新闻列表页:通过WEUI框架实战我深入理解了块级作用域与点击事件
    前言今天简单的使用WEUI进行了新闻列表页的开发。在实现JS中发现了许多有趣的事情。今天就打算写一个文章给遇到了同样问题的同学进行解惑。话不多说,开始发车。以下是我要实现的效果内容,大家可以看看内容比较。代码我贴在文章末尾:框架分为以下两点:Nav导航栏搜索栏Nav导......
  • 透过 node-exporter 彻底弄懂机器监控:01. node-exporter 框架讲解
    前言Prometheus生态里有很多采集器负责各类监控数据的采集,其中使用最广泛的,显然是node-exporter,负责Linux、BSD等系统的常规监控指标的采集,比如CPU、内存、硬盘、网络、IO等。其github地址是:https://github.com/prometheus/node_exporter 。很多人都用过,但对其细节未必......
  • 学习unigui【26】关于Unigui控件的个性化CSS框架
    用unigui写程序,简单的事用户界面不用HTML。因为这个太闹心了。没有什么技术含量,但很闹心。但是,但是不清楚HTMLCSS更闹心。因为养眼的界面是客户起步疑问和要求。强烈推荐认真读明白大虾的体验和总结:delphiUnigui框架TUniContainerPanel把CSS和界面属性对应起来后,明白怎么回事......
  • 深入探索Qt框架系列之信号槽原理(三)
    前面两篇分别介绍了QObject::connect和QMetaObject::Connection,那么信号槽机制的基础已经介绍完了,本文将介绍信号槽机制是如何从信号到槽的,以及多线程下是如何工作的。信号槽机制源码解析1.信号的触发以该系列的第一篇文章中的示例举例:test_moc.h:classtest_moc:p......
  • java集合框架
    java集合框架前言:本节我们来学习java集合框架1.0什么是集合集合便是对象的容器,定义了多个对象进行操作的常用方法集合和数组的区别:1数组长度固定,集合长度不固定2数组可以存储基本类型和引用类型,集合只能存储引用类型。我们在使用集合时,需要导入java.utill的所有内容1.1......
  • golang import 导入的四种方式
     1标准导入:import"package_name" 2导入别名:import(alias"package_name") 3匿名导入:import(_"package_name") 4点导入:import(."package_name") 下面做详细解释:Go语言最常见的导入方式是标准导入,格式如下:import&qu......