任务完成后,JavaFX执行代码

时间:2017-01-16 15:29:22

标签: java task javafx-8

我正在为我的应用程序使用JavaFX,而我正在使用JavaFX中的Task来上传文件。

public class Upload extends Task<UploadFile> {  
   private UploadFile uploadFile;     
   public Upload(UploadFile uploadFile){
        this.uploadFile= uploadFile;
    }

    @Override
    protected synchronized UploadFile call() throws Exception {
        ....
            hcl.invokeMethodUploadFile(uploadFile);
            return null;
    }
}

方法“initiate”创建一个UploadFile-Container并将其添加到Threadpoolexecutor的队列中。将为每个文件执行一次此方法。此类还包含在文件上载完成后继续执行的其他必要信息。

public void initiate(){

        UploadFile uc = new UploadFile(file);
        // Set other informations as well

   // add Container to queue
        main.getUploadFiles().add(uc);

    } 

UploadFile是一个包含有关文件,服务器信息等信息的类 其中我想在上传完成后将url插入数据库。文件上传后如何执行某些代码?

1 个答案:

答案 0 :(得分:4)

当您创建任务时,您可能会使用

执行此操作
var task = NavigationService.NavigateAsync("MainPage/NavigationPage/View1");

你可以做到

Upload upload = new Upload(uc);