<%-- 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流,然后面向對象操作