Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/376.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在java中如何在用户动态设置的指定时间执行函数_Java_Jsp_Servlets_Pdf_Timer - Fatal编程技术网

在java中如何在用户动态设置的指定时间执行函数

在java中如何在用户动态设置的指定时间执行函数,java,jsp,servlets,pdf,timer,Java,Jsp,Servlets,Pdf,Timer,我有一个java函数,其中包含生成pdf文件并保存到系统本地磁盘的代码。现在,根据我的要求,我必须制作一个jsp页面,其中包含一个表单,用户可以从中动态设置生成pdf的日期和时间。现在,应根据用户输入和用户输入生成pdf输入本质上是动态的,可以更改 例如 假设用户已将pdf设置为每月15日上午10:00创建。那么这次它应在15日上午10:00生成pdf 现在,如果他的要求发生变化,他可以将其设置为每月上午10:00,以此类推 我找不到前进的路 这是我在POJO文件中的pdf生成代码 Output

我有一个java函数,其中包含生成pdf文件并保存到系统本地磁盘的代码。现在,根据我的要求,我必须制作一个jsp页面,其中包含一个表单,用户可以从中动态设置生成pdf的日期和时间。现在,应根据用户输入和用户输入生成pdf输入本质上是动态的,可以更改

例如

假设用户已将pdf设置为每月15日上午10:00创建。那么这次它应在15日上午10:00生成pdf

现在,如果他的要求发生变化,他可以将其设置为每月上午10:00,以此类推

我找不到前进的路

这是我在POJO文件中的pdf生成代码

OutputStream file = new FileOutputStream(new File("D://timer.pdf"));
        Document document = new Document();
        PdfWriter.getInstance(document, file);

        //Inserting Table in PDF
        PdfPTable table = new PdfPTable(3);

        PdfPCell cell = new PdfPCell(new Paragraph("Java4s.com"));

        cell.setColspan(3);
        cell.setHorizontalAlignment(Element.ALIGN_CENTER);
        cell.setPadding(10.0f);
        cell.setBackgroundColor(new BaseColor(140, 221, 8));

        table.addCell(cell);

        table.addCell("Name");
        table.addCell("Address");
        table.addCell("Country");
        table.addCell("Java4s");
        table.addCell("NC");
        table.addCell("United States");
        table.setSpacingBefore(30.0f);       // Space Before table starts, like margin-top in CSS
        table.setSpacingAfter(30.0f);        // Space After table starts, like margin-Bottom in CSS                                       

        //Inserting List in PDF
        List list = new List(true, 30);
        list.add(new ListItem("Java4s"));
        list.add(new ListItem("Php4s"));
        list.add(new ListItem("Some Thing..."));

        //Text formating in PDF
        Chunk chunk = new Chunk("Welecome To Java4s Programming Blog...");
        chunk.setUnderline(+1f, -2f);//1st co-ordinate is for line width,2nd is space between
        Chunk chunk1 = new Chunk("Php4s.com");
        chunk1.setUnderline(+4f, -8f);
        chunk1.setBackground(new BaseColor(17, 46, 193));

        //Now Insert Every Thing Into PDF Document
        document.open();//PDF document opened........                  
        document.add(Chunk.NEWLINE);   //Something like in HTML :-)
        document.add(new Paragraph("Dear Java4s.com"));
        document.add(new Paragraph("Document Generated On - " + new Date().toString()));
        document.add(table);
        document.add(chunk);
        document.add(chunk1);
        document.add(Chunk.NEWLINE);   //Something like in HTML :-)                             
        document.newPage();            //Opened new page
        document.add(list);            //In the new page we are going to add list
        document.close();

        file.close();

        System.out.println("Pdf created successfully..");

提前感谢。

您可以使用java的计时器和任务类使用该类。上面有很多例子


正如有人在评论中提到的那样,继续下去会更好。(javadoc已经有了关于这个主题的教程。)

我认为
ScheduledExecutorService
在这里更适用,因为你有一个
Future
可以让你控制和监控任务。@Boristeider请给我一个链接或代码片段,先生,我对这一点非常陌生。
ScheduledExecutorService
在这里更适用,因为你有一个
Future
允许您控制和监视任务。