JavaWeb servlet文件上传

servlet

 HashMap map=new HashMap();
            //上传
            boolean isMultipart= ServletFileUpload.isMultipartContent(req);
            if (isMultipart){//判断前台的from是否有multipart属性
                FileItemFactory factory=new DiskFileItemFactory();
                ServletFileUpload upload=new ServletFileUpload(factory);
                try {
                    //通过parseRequest解析from中的所有请求字段,并保存到items集合中(即前台传递的file就保存在了items)
                    List<FileItem> items= upload.parseRequest(req);
                    Iterator<FileItem> iter= items.iterator();
                    while (iter.hasNext()){
                        FileItem item= iter.next();
                        //判断是表单字段还是文件字段
                        if (!item.isFormField()){
                            //文件上传
	           //文件名
  	           String fieldName = item.getFieldName();
                            //文件名getName() 获取文件字段的值
                            String fileName= item.getName();
                          
                            map.put(fieldName,fileName);
                            //文件的内容,并上传
                            //定义文件路径,指定上传的位置(服务器路径)
                            String upload1 = req.getServletContext().getRealPath("upload");
                            String[] outs = upload1.split("out");
                            String homePath=outs[0]+"web\\img\\upload";
                            File file1=new File(homePath,fileName);
                            item.write(file1);//上传
                        }else {
	            //普通字段
                            String fieldName = item.getFieldName();
                            String val = item.getString("utf-8");
                            map.put(fieldName,val);
                        }
                    }
                } catch (FileUploadException e) {
                    e.printStackTrace();
                } catch (Exception e) {
                    e.printStackTrace();
                }
            }

Html

<form method="post" action="" enctype="multipart/form-data">
	<input type="file" name="fileImg">
	<input type="text" name="username">
</form>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值