java获取表单文件大小_Java Web 学习笔记之一:服务器获取表单上传的文件

package com.johnson.servlet;

import java.io.IOException;

import javax.servlet.ServletConfig;

import javax.servlet.ServletException;

import javax.servlet.annotation.MultipartConfig;

import javax.servlet.http.HttpServlet;

import javax.servlet.http.HttpServletRequest;

import javax.servlet.http.HttpServletResponse;

import javax.servlet.http.Part;

import com.johnson.tools.UploadUtil;

/**

* created by johnson on 2016/5/11

* @author johnson

* @version 1.0

* @description 尝试文件上传功能的servlet,需要通过jsp/html或者移动设备的表单格式发送post请求

* @attention 通过getpart获取文件的方法需要servlet3.0以上支持

* @attention 添加@MultipartConfig注解之后,multipart/form-data类型的表单也可以通过request的getparameter方法获取数据

* */

@MultipartConfig

public class FileUploadTestServlet extends HttpServlet {

/**

*

*/

private static final long serialVersionUID = 1L;

public String baseFileSavePath = null;//文件保存的基础路径(自定义)

/**

* method init

* @throws ServletException

* */

public void init(ServletConfig config)

throws ServletException{

super.init(config);

this.baseFileSavePath = this.getServletContext().getInitParameter("BaseFilePath");//从web.xml排位置文件中获取基础路径

}

/*

* @method doPost

* @description 在doPost方法中使用getPart方法获取请求上传的文件

* */

protected void doPost(HttpServletRequest request, HttpServletResponse response)

throws ServletException, IOException{

request.getSession();

try{

Part part0 = request.getPart("file0");//获取名称为file0的文件

part0.write(this.baseFileSavePath+UploadUtil.getFileName(part0));//用Part的write方法将文件写入磁盘中

}catch(IOException e){

e.printStackTrace();

}

try{

Part part1 = request.getPart("file1");//获取名称为file1的文件

part1.write(this.baseFileSavePath+UploadUtil.getFileName(part1));//用Part的write方法将文件写入磁盘中

}catch(IOException e){

e.printStackTrace();

}

response.getWriter().write("OK!");

}

protected void doGet(HttpServletRequest request, HttpServletResponse response)

throws ServletException, IOException{

doPost(request, response);

}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值