<%-- Created by IntelliJ IDEA. User: mr.wang Date: 2021/10/31 Time: 12:41 To change this template use File | Settings | File Templates. --%> <%@ page contentType="text/html;charset=UTF-8" language="java" %> <html> <head> <title>Title</title> </head> <body> <form action="/upload" method="get"> <input type="file" name="img"><br/> <br/> <br/> <input type="submit" value="提交"> </form> </body> </html>
其中传文件的方式为get或post传过去的为文件名
这时咱们可以将from里面的enctype改成其他形式
改成流的形式去存,所以当我们在servlet里面取的时候也需要使用二进制流来取
但如果用字节流来接受的话返回接收到的回是一串数字,但如果用字符流的话,就会变成一串文字信息
但是好歹学到了怎么转到servlet里面,在转到指定servlet的包的前面还需要加上tomcat的地址,不然找不到
但是在jsp转到servlet之后报错500
后来,我感觉吧,应该还是路径问题,后来在后续的摸索中我改变了获取资源位置的方法
这种是在服务器上面获取资源。
又是我最喜欢的没有用的环节,这一串代码是底层代码,这只是要我们更好的了解这个的运行过程,哦耶
所以前面输不出就挺正常的了
。
。
。
言归正传,那么在正常开发中,咱们是咋用的呢
fileupload:
通过导入两个jar包之后咱们就可以使用这个东西了
上面那两个,在这种操作咱们就可以用面向对象的方法来写文件的上传之类的操作
try { DiskFileItemFactory fileItemFactory=new DiskFileItemFactory(); ServletFileUpload servletFileUpload =new ServletFileUpload(fileItemFactory); List<FileItem> list=servletFileUpload.parseRequest(req); } catch (FileUploadException e) { e.printStackTrace(); }
具体操作就io流,然后面向对象操作