所以我想在我的表单中添加四个变量,我将文件上传到ftp服务器。
现在我将所有变量都硬编码,它看起来像:
FileUploadHandler.java
public class FileUploadHandler extends HttpServlet {
@Override
public void doPost(HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException {
ServletFileUpload upload = new ServletFileUpload();
response.setContentType("text/plain");
FileItemIterator iterator;
try {
iterator = upload.getItemIterator(request);
while (iterator.hasNext()) {
FileItemStream item;
item = iterator.next();
InputStream stream = item.openStream();
CountriesReader countriesReader = new CountriesReader();
Set<Country> sortedCountries = countriesReader.readCountries(stream, true);
GroupOfCountries groupOfCountries = new GroupOfCountries();
List<GroupOfCountries> listOfGroupedCountriesClasses = groupOfCountries.organizeCountriesInGroups(sortedCountries);
FTPConnection ftpConnection = new FTPConnection();
ftpConnection.makeConnection("localhost", "21", "ftptest", "test");
Maker maker = new FTPFileMaker(ftpConnection);
maker.createFiles(listOfGroupedCountriesClasses, File.separator + "test123");
ftpConnection.makeDisconnection();
}
} catch (FileUploadException e) {
e.printStackTrace();
} catch (RuntimeException e) {
e.printStackTrace();
} catch (JSONException e) {
e.printStackTrace();
} catch (JAXBException e) {
e.printStackTrace();
}
}
}
的index.jsp
<%@page import="java.util.Date"%>
<%@page import="pl.marek.countriesmapper.reader.*" %>
<%@page import="pl.marek.countriesmapper.preparer.*" %>
<%@page import="pl.marek.countriesmapper.country.*" %>
<%@ page language="java" contentType="text/html; charset=US-ASCII" pageEncoding="US-ASCII"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>Hello</title>
</head>
<body>
<form name="form1" id="form1" action="upload" method="post" enctype="multipart/form-data">
<input type="hidden" name="hiddenfield1" value="ok">
Files to upload:
<br/>
<input type="file" size="50" name="file1">
<input type="submit" value="Upload">
</form>
</body>
</html>
如何添加表格&#34; localhost&#34;,&#34; port&#34;,&#34; username&#34;和#34;密码&#34;然后把它带到FileUploadHandler类中的变量?
答案 0 :(得分:1)
您可以将文本字段添加为<input type="text" size="50" name="port">
,并将其他文本字段添加到表单中,使用request.getParameter(FILED_NAME)
将为您提供doPost()方法中的值。