JSP程序设计 教学课件 范立锋 乔世权 程文彬习题答案 第10章习题答案.doc
文本预览下载声明
第10章 JSP实用组件技术
习题答案
1.Commons-FileUpload组件是否支持多文件上传?
答案:
Commons-FileUpload组件是由Apache公司开发的功能强大的文件上传组件,我们可以通过该组件实现一次上传一个或多个文件PNG和JPEG格式JFreeChart是JAVA平台上的一个开图表绘制。可生成饼图(pie charts)、柱图(bar charts)、散点图(scatter plots)、时序图(time series)、甘特图(Gantt charts)等多种图表CommonUpload.jsp的页面文件,该页面中完成三个文件的上传代码如下:
%@ page language=java pageEncoding=utf-8%
html
headtitle多文件上传/title/head
body
form action=CommonUpload.do enctype=multipart/form-data method=post
上传文件:br
第一个文件:input type=file name=Upload /br
第二个文件:input type=file name=Upload /br
第三个文件:input type=file name=Upload /br
input type=submit value=上传 /br
/form
/body
/html
(2)web.xml文件中配置CommonUpload.do请求,代码如下:
?xml version=1.0 encoding=UTF-8?
web-app version=2.4 xmlns=/xml/ns/j2ee
xmlns:xsi=/2001/XMLSchema-instance
xsi:schemaLocation=/xml/ns/j2ee
/xml/ns/j2ee/web-app_2_4.xsd
servlet
servlet-nameCommonUpload/servlet-name
servlet-classsunyang.CommonUpload/servlet-class
/servlet
servlet-mapping
servlet-nameCommonUpload/servlet-name
url-pattern/CommonUpload.do/url-pattern
/servlet-mapping
welcome-file-list
welcome-fileCommonUpload.jsp/welcome-file
/welcome-file-list
/web-app
(3)定义Servlet类,处理上传请求,并对上传文件类型进行限制,限制为jpg格式,代码如下:
package sunyang;
public class CommonUpload extends HttpServlet {
protected void doGet(HttpServletRequest request,
HttpServletResponse response) throws ServletException, IOException {
doPost(request, response);
}
protected void doPost(HttpServletRequest request,
HttpServletResponse response) throws ServletException, IOException {
DiskFileItemFactory factory = new DiskFileItemFactory();
factory.setRepository(new File(request.getRealPath(/)));
factory.setSizeThreshold(1024 * 1024 * 20);
ServletFileUpload upload = new ServletFileUpload(factory);
List items = null;
try {
items = upload.parseRequest(request);
} catch (FileUploadException e) {
e.printStackTrace();
}
for (int i = 0; i items.size(); i++) {
FileItem item = (FileItem) items.get(i);
显示全部