📄 uploadhandler.java
字号:
package firewall.server;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import firewall.common.*;
import java.io.*;
/**
* Title: UploadHandler
* Description: Subclass of RequestHandler to process uploading of
* file requests from client to the server
* Copyright: Copyright (c) 2001
* Company:
* @author Andrew Harbourne-Thomas
* @version 1.0
*/
public class UploadHandler extends RequestHandler {
/**
* Perform the processing and response to the client request
*
* @param baseRequest BaseRequest or subclass containing
* information relevent to the request
*/
public void respond(BaseRequest baseRequest) {
try {
InputStreamReader isr =
new InputStreamReader(httpServletRequest.getInputStream());
BufferedReader bfr = new BufferedReader(isr);
String fileName = ((FileName) baseRequest).getFileName();
if (!FileValidator.isFileNameValid(fileName)) {
sendError(HttpServletResponse.SC_PRECONDITION_FAILED, "Filename is invalid");
return;
}
File newFile = new File(fileBase, fileName);
FileWriter fileWriter = new FileWriter(newFile);
char c[] = new char[10];
int read = 0;
while ((read = bfr.read(c)) != -1) {
fileWriter.write(c, 0, read);
}
// Close
fileWriter.close();
isr.close();
setStatusCode(HttpServletResponse.SC_CREATED);
}
catch (IOException ioe) {
try {
sendError(HttpServletResponse.SC_INTERNAL_SERVER_ERROR, "File not uploaded");
}
catch (IOException ioe2) {
ioe2.printStackTrace();
}
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -