繁体   English   中英

使用Spring Boot读取Excel文件时避免在MySQL中插入重复项

[英]Avoid inserting duplicates into MySQL while reading an excel file using spring boot

我正在使用Spring Boot读取Excel文件。 我阅读了每张纸的名称,并将它们插入数据库中。 在插入工作表名称之前,我想检查名称是否已经存在。 我只想插入不存在的名称。

如何避免使用Spring Boot读取Excel文件时在MySQL中插入重复名称?

到目前为止,这是我尝试过的方法:

public void  insertIntoMysql()
    {
        try { 
            List<Field> fs=new ArrayList<Field>();
            InputStream ExcelFileToRead = new FileInputStream("IR21_Update.xlsx");
            XSSFWorkbook  wb = new XSSFWorkbook(ExcelFileToRead);  

            for(int i=0;i<wb.getNumberOfSheets();i++)
            {  TableEntity t=new TableEntity(wb.getSheetName(i), "");

        if(!te.findAll().contains(t.getEntityName()))
                {System.out.println(te.findAll().contains(t.getEntityName()));
          te.save(t);

            }}} catch (Exception e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }   
    }

为什么不使用exist()方法代替您正在做什么? 那就是它的目的。

布尔存在(ID ID)

返回具有给定id的实体是否存在。

if(!te.exits(wb.getSheetName(i))){
    TableEntity t=new TableEntity(wb.getSheetName(i), "");
    te.save(t)
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM