gpt4 book ai didi

java - 如何使用java将excel数据存储在结果集中

转载 作者:行者123 更新时间:2023-12-02 00:29:03 25 4
gpt4 key购买 nike

我需要将 Excel 数据(按行)与数据库表进行比较。

有人可以帮我解决这个问题吗?

我可以使用下面的代码正确地按行和按列读取 Excel 文件

public class POC {

public static void main(String[] args) {

String colText = null;
XSSFWorkbook workbook;
Cell cell = null;
try {
HashSet<String> xlRead = new HashSet<String>();

InputStream myxls = new FileInputStream(new File(
"excelpath.xlsx"));

workbook = new XSSFWorkbook(myxls);

Sheet sheet = workbook.getSheetAt(0); // Get Your Sheet.
java.util.Iterator<Row> rowterator = sheet.rowIterator();
while (rowterator.hasNext()) {
Row row = rowterator.next();
java.util.Iterator<Cell> cellIterator = row.cellIterator();
while (cellIterator.hasNext()) {
cell = cellIterator.next();
switch (cell.getCellType()) {
case Cell.CELL_TYPE_STRING:
xlRead.add(cell.getStringCellValue() + "");
System.out.println(cell.getStringCellValue());

default:
break;
}
}
}
System.out.println("");
myxls.close();

for (String s : xlRead)
System.out.println(s);
} catch (IOException e) {
e.printStackTrace();
}
}
}

最佳答案

建议您使用 compareTo(Object object) 的客户实现创建一个对象来存储数据库中的数据(为此使用 JPA)。然后,您可以使用同一个对象来存储从 Excel 获取的数据,并使用您创建的“compareTo”方法比较两个对象?

@Entity 
@Table(name="Age")
public class MyAge() {

public MyAge();

@Id
@Column(name="id")
@GeneratedValue(strategy=GenerationType.IDENTITY)
int id;

@Column(name="age")
private int age;

... getters and setters, though lombok is better ...

@Override
public int compareTo(MyAge myAge) {
return Integer.compare(age, myAge.age);
}
}

关于java - 如何使用java将excel数据存储在结果集中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58031356/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com