通过单击Java服务器页面/ Java上的“按钮”来动态创建一个文件夹

时间:2018-09-03 16:27:38

标签: java jsp

我试图通过JSP创建一个自动目录(通过“输入按钮”)。为此,我遵循以下代码:

<form action ="index.jsp">
<input type="button" name="systemDes" value="Build ">


<%
        String startTodir = request.getParameter("systemDes");
        String path="home/user1/Desktop/";
        File folderCreation = new File (path+"01");
            System.out.println("hello+2");
            if (startTodir != null){
            System.out.println("hello+1");
            folderCreation.mkdirs();
            }
    %>`
</form>

如何调试以上用于创建目录的代码?

2 个答案:

答案 0 :(得分:0)

您应该避免在JSP中使用脚本。

相反,请使用Ajax:

  • 创建一个将获取request参数的servlet并创建文件夹
  • 在按钮的onClick中使用ajax并调用servlet。

如果您仍然希望在jsp文件中包含逻辑,我建议将scriptlets syntax (<% ... %>)更改为declaration syntax (<%! ... %>),并在方法createFile中声明您的文件创建代码。并在单击按钮时使用此方法。您的代码无法进行按钮点击,因为似乎request.getParameter返回的是null,并且使用这种声明性语法,可以避免这种情况

答案 1 :(得分:0)

重新加载页面时,请求参数mysql> select current_user (); +----------------------+ | current_user () | +----------------------+ | phpmyadmin@localhost | +----------------------+ 1 row in set (0.00 sec) 存在,因此systemDes不为空,并且startTodir得到满足,并创建了目录。

您需要做的就是更改为if,这将在按下“提交”按钮时重新加载页面,并在请求中传递<form action="">参数。

不建议在JSP中使用这种代码,您应该真正考虑编写一个servlet来进行文件创建。

完整的代码是

systemDes