1. 程式人生 > >spring 文件上傳

spring 文件上傳

class smu The servlet loader ctu pan 文件大小 except

package springmvc;

public class TestOne {

    /**
     * 
     * Springmvc配置的替代方案
     * 處理文件上傳
     * 控制器中處理異常
     * 使用flash
     * 
     * 1.springmvc的加載
     * 代碼方式創建Servlet filter listener,
     * 實現webapplicationinitializer接口,創建實例並映射到路徑上
     * 
     * web.xml中加載servlet
     * 
     * DispatherServlet 和contextLoaderListener
     * 
     * 
     * contextConfigLocation
     * 加載bean到到容器,spring和springmvc分別可以加載一個文件
     * 
     * 
     * 
     * 2.處理multipart形式的數據
     * 文件上傳,處理圖片等二進制數據,
     * 可以使用multipart格式的數據,會將數據拆分多個部分
     * 
     * 配置multipart解析器
     * 
     * 兩種方式:
     * 1)代碼方式註冊servlet  setMultipartConfig()
     * 2)在web.xml中配置  
     * 
     *  必須指定一個路徑,上傳的文件將會寫入該目錄中。
     *  
     *  兩種servlet
     *  CommonsMultipartResolver
     *  StandardServletMultiResolver    此種方式能設置文件大小,上限
     *  
     *  3.處理multipart請求
     *  
     * 控制器上添加註解 @RequestPart
     * 表單上 enctype 設置為 multipart/form-data,每個輸入域對應一個part
     * 
     * 表單input 新增了一個file類型,只接受jgpe、png、gif圖片,
     * 控制器端profilepicture接收,數組接收
     * 
     * public void method(){
     * @RequestPart("profilePicture")  byte[] profilePicture
     * }
     * 
     * 4.MultipartFile 接口處理文件
     * 
     * AWS憑證  保存圖片
     * 
     * 5.javax.servlet.http.Part接口
     * 
     *  public void method(){
     * @RequestPart("profilePicture")  Part part
     * }
     * 
     * 
     * 6.異常處理
     * @ResponseStatus
     * 
     * 
     * @ExceptionHandler
     * 7.控制器通知類
     * 
     * 建立一個控制器帶@ControllerAdvice,會掃描所有的控制器類
     * 
     * 可以在這個列中定義方法處理所有的異常
     * 
     * @ControllerAdvice      //定義控制器類
     * public Class ControllerAd{
     * 
     * @ExceptionHandler(DuplicateException.class)
     * public String duplicSpitterExcetion{  //定義異常處理方法
     * return "error/duplication";
     * }
     * 
     * 
     * 現在無論哪個控制拋出DuplicateException異常,都會執行這個方法duplicSpitterExcetion
     *  
     * }
     * 
     * 
     
*/ }

spring 文件上傳