小D課堂 - 零基礎入門SpringBoot2.X到實戰_第2節 SpringBoot接口Http協議開發實戰_1三、jar包方式運行web項目文件上傳和訪問

筆記

八、jar包方式運行web項目的文件上傳和訪問處理(核心知識)
    簡介:講解SpingBoot2.x使用 java -jar運行方式的圖片上傳和訪問處理

    一、文件大小配置,啓動類裏面配置
        
            @Bean  
            public MultipartConfigElement multipartConfigElement() {  
                MultipartConfigFactory factory = new MultipartConfigFactory();  
                //單個文件最大  
                factory.setMaxFileSize("10240KB"); //KB,MB  
                /// 設置總上傳數據總大小  
                factory.setMaxRequestSize("1024000KB");  
                return factory.createMultipartConfig();  
            }  

    二、打包成jar包,須要增長maven依賴
        <build>
            <plugins>
                <plugin>
                    <groupId>org.springframework.boot</groupId>
                    <artifactId>spring-boot-maven-plugin</artifactId>
                </plugin>
            </plugins>
        </build>
        若是沒加相關依賴,執行maven打包,運行後會報錯:no main manifest attribute, in XXX.jar

        GUI:反編譯工具,做用就是用於把class文件轉換成java文件

    三、文件上傳和訪問須要指定磁盤路徑
        application.properties中增長下面配置
            1) web.images-path=/Users/jack/Desktop
            2) spring.resources.static-locations=classpath:/META-INF/resources/,classpath:/resources/,classpath:/static/,classpath:/public/,classpath:/test/,file:${web.upload-path} 

    四、文件服務器:fastdfs,阿里雲oss,nginx搭建一個簡單的文件服務器java

開始

上傳一個大文件


文件超過了最大的限制


把代碼複製到application啓動類裏面

必定要是帶@SpringBootConfiguration的類裏面

SpringBootConfiguration註解裏面包含了@Configuration這個註解


引入對應的包後。

啓動應用。

上傳的這個圖片1.2M

上傳成功了
nginx

打成jar包

打包當前項目

打包成功



打包後會放在target的目錄裏面

運行這個jar包

錯誤:找不到入口啓動類


打包的時候須要一個maven的依賴

這是spring-boot提供的插件。幫我打包成一個jar包

再次打包







把壓縮包解壓出來

BOOT-INF:字節碼文件和依賴的jar包

MAINFEST.MF:最主要的是Main-Class:類加載器 加載咱們對應的應用

Start-Class:入口。剛纔的jar包報錯就是找到XdclassApplication

就是咱們源碼的這裏
web

配置上傳的固定路徑




第二行配置最後加一行

這裏先把上傳路徑寫死到這裏。由於咱們尚未學習讀取配置文件。之類暫時把路徑寫死

再次打包



運行 程序

上傳一個圖片

由於配置的是桌面上,因此上傳到了桌面上

也就是配置的這個目錄:User/jack/Desktop


能夠直接訪問這個圖片
spring

擴展知識

 

相關文章
相關標籤/搜索