gpt4 book ai didi

java - 检查数据库是否存在

转载 作者:行者123 更新时间:2023-12-02 06:58:15 26 4
gpt4 key购买 nike

在下面的代码中,我解析了所有文件名,然后用它来检查数据库中查看它是否存在。我在下面做错了什么?如果是这样,你能告诉我吗?

还在执行命令中,我收到一条错误消息,指出 listofFiles 无法解析为变量。

public class FileGetName {
public String fileName;
public static void main(String[] args) {
File folder = new File("C");
File[] listOfFiles = folder.listFiles();

for (int i = 0; i < listOfFiles.length; i++) {
if (listOfFiles[i].isFile()) {
System.out.println(listOfFiles[i].getName());
} else if (listOfFiles[i].isDirectory()) {
System.out.println("Directory " + listOfFiles[i].getName());
}
}
}

public void doesFileExistinDB(String fileName) {
PreparedStatement pst = null;
Connection conn = null;
ResultSet rs= null;
try {
conn = DBConnect.getInstance().dbOracleConnect();
String sql= "select * from PO_Parent_List where" +
" po_number in (fileName)";
pst = conn.prepareStatement(sql);
rs = pst.executeQuery();
}
catch (Exception e) {
System.out.println(e);
}
}



public void execute() {
if (listOfFiles[i].isFile())
{
String fileName = listOfFiles[i].getName();
System.out.println(fileName);
doesFileExistInDb(fileName);
}
}

最佳答案

需要在public voidexecute()方法中传递listOfFiles,例如:

public void execute(File[] listOfFiles){

}

这就是为什么您会收到编译错误,因为 listOfFiles 无法解析为变量。

或者您需要将变量listOfFiles声明到类级别

编辑:(无法理解您从哪里调用执行)

int i = 0;//Declare i to class level.
public void execute(File[] listOfFiles) {
if (listOfFiles[i].isFile())
{
String fileName = listOfFiles[i].getName();
System.out.println(fileName);
doesFileExistInDb(fileName);
i++;
}
}

关于java - 检查数据库是否存在,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17028727/

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