文件上传实际上就是Browser (浏览器)跟
Server(服务器)的数据互动,JavaWeb实现文件上传也不例外,当用户在前端网页点击文件上传后,用户上传提交的内容会存放到临时的文件中,我们使用getpart来获取Part对象,并通过Part对象获得流,javaWeb的servlet会获得用户所提交的文件并且将文件存放到服务器里。
get 请求,参数是放在 URL 地址栏中发送到服务器的 /xxx?id=3&name=admin
post 请求,参数是放在请求体中发送的,所以地址栏看不到数据
enctype 表示数据的传输格式:
application/x-www-form-urlencoded : id=3&name=admin
multpart/form-date ,表示数据将会被分段处理之后再发送
HTML中用来跟文件系统进行交互的手段只有一个 :input type=file
如果想要上传的话:
必须要用 post 进行提交,这种方式,将会把数据封装在请求体中进行发送
必须指定 enctype 为 multipart/form-date ,这样数据才会被正确分段处理并上传
JavaWeb实现文件上传基本步骤:
前端页面:
写一个 form 表单,使用 post 方法,并指定 enctype="multipart/form-date "
使用 input type = file ,来选择文件
后台接收:
要在 Servelt 上面添加 @MultipartConf