Html 根据定义的类别将文件上载到目标文件夹
我想根据下拉列表中定义的类别将文件上载到指定的文件夹。我使用了o'reilly api上载文件,将文件存储到单个文件夹。我使用了两个下拉列表(主类别和子类别)。如果用户定义了他的选项,然后应该更改路径,并将文件上载到指定文件夹,例如:“c:\output\aero\int”。路径将是动态的,并将根据用户输入而更改。上载文件的“我的代码”Html 根据定义的类别将文件上载到目标文件夹,html,jsp,multipartform-data,Html,Jsp,Multipartform Data,我想根据下拉列表中定义的类别将文件上载到指定的文件夹。我使用了o'reilly api上载文件,将文件存储到单个文件夹。我使用了两个下拉列表(主类别和子类别)。如果用户定义了他的选项,然后应该更改路径,并将文件上载到指定文件夹,例如:“c:\output\aero\int”。路径将是动态的,并将根据用户输入而更改。上载文件的“我的代码” <%@page import="javax.ejb.DuplicateKeyException"%> <%@ page import="j
<%@page import="javax.ejb.DuplicateKeyException"%>
<%@ page import="java.io.*,java.sql.*,java.util.zip.*,com.oreilly.servlet.*,com.oreilly.servlet.MultipartRequest,javax.servlet.http.HttpServletResponse" %>
<!DOCTYPE html>
<%
ResultSet rs=null;
Connection connection = null;
String connectionURL = "jdbc:mysql://localhost:3306/ksa";
PreparedStatement psmnt = null;
PreparedStatement psmnt1=null;
PreparedStatement psmnt2=null;
String path;
path="/home/adapco/Desktop/output";
MultipartRequest request2=new MultipartRequest(request,path,1024*1024*1024);
String filename=request2.getFilesystemName("file");
String file1=request2.getParameter("file1");
String selectedValue=request2.getParameter("sel1");
String select1=request2.getParameter("sel2");
String concat=selectedValue+"." +select1;
File f=request2.getFile("file");
//out.println(f.exists()+"----------------"+f.getAbsolutePath());
//out.print(filename);
Class.forName("com.mysql.jdbc.Driver").newInstance();
connection = DriverManager.getConnection(connectionURL, "root", "root");
try
{
java.sql.Date sqlDate = new java.sql.Date(new java.util.Date().getTime());
psmnt1 = connection.prepareStatement("insert into file12(id,file_description,file_path,file_date) values(?,?,?,'"+ sqlDate+"')");
psmnt1.setString(1, concat);
psmnt1.setString(2, file1);
psmnt1.setString(3, f.getPath());
//psmnt.setString(3, "sqlDate");
//String query="select * from file12";
int s=psmnt1.executeUpdate();
if(s>0)
{
System.out.println("Uploaded successfully !");
}
else
{
System.out.println("Error!");
}
psmnt=connection.prepareStatement("select * from file12");
rs=psmnt.executeQuery();
}
catch(Exception e)
{
out.print(" the file already exist"+e);
}
%>
<table cellpadding="15" border="1">
<%
while(rs.next()){
%>
<tr>
<td><%=rs.getString(1)%> </td>
<td><%=rs.getString(2)%> </td>
<td><%=rs.getString(3)%> </td>
<td><%=rs.getString(4)%></td>
</tr>
<%}%>
<a href="index.jsp">home</a><br>
<a href="sample.jsp">upload file</a>
</table>
<%
response.sendRedirect("index.jsp");
%>
上面的代码显示了一个错误
java.io.IOException: Corrupt form data: premature ending
如果仅创建了多部分对象,则会显示
request2 is not initialized.
我正在比较连接值以获得用户定义的类别。是的,可以上载具有特定文件夹名称的文件 第一步。使用ajax请求提交表单,并使用创建文件夹时使用的url发布参数。 例如:
var url ="test?folder1=f1&folder2=f2"
$('form').attr('action',url);
使用ajax或javascript表单提交表单后。提交
并在request.getParameter('folder1')、request.getParameter('folder2')
很好用。你试过什么?我没有看到任何代码显示你的努力。你想让用户为你写代码吗?@HardikMishra:我已经定义了我要做的事情
request2 is not initialized.
var url ="test?folder1=f1&folder2=f2"
$('form').attr('action',url);