开发工具与关键技术:MyEclipse 10/Java
作者:吴永旗
撰写时间: 2019年06月17日
本实例要实现的是上传图片同时带有字段保存到数据库,首先我们需要引入commons-io-2.5.jar和commons-fileupload-1.3.2.jar包,其次最为重要的是中jsp页面的表单中from务必要有这两个属性为method="post"和 enctype="multipart/form-data",否则数据提交失败,而servlet层不能通过request方式请求获取得到from表单的值,而是通过parseRequest()方法获取集合,然后for循环遍历,通过getFieldName()获取字段,通过if()进行名字一一匹配,从而代替request.getParameter的方法请求。
(1)新建一个index.jsp页,from表单要有method="post"和 enctype="multipart/form-data"属性,关键代码如下:
(2)新建一个upload.java,用于编写selvert层代码,关键代码如下:
D int sizeThreshold=1024*1024*1; //1m
int fileSizeMax=1024*1024*5;//5m
int sizeMax=1024*1024*8; //8m
DiskFileItemFactory factory=new DiskFileItemFactory();
// 设置内存临界值 - 超过后将产生临时图片并存储于临时目录中 10M
factory.setSizeThreshold(sizeThreshold);
//配置临时目录
factory.setRepository(new File(System.getProperty("java.io.tmpdir")));
ServletFileUpload upload=new ServletFileUpload(factory);
//设置编码
upload.setHeaderEncoding("utf-8"