我试图通过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>
如何调试以上用于创建目录的代码?
答案 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