博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
小D课堂 - 零基础入门SpringBoot2.X到实战_第2节 SpringBoot接口Http协议开发实战_13、jar包方式运行web项目文件上传和访问...
阅读量:4325 次
发布时间:2019-06-06

本文共 1543 字,大约阅读时间需要 5 分钟。

笔记

8、jar包方式运行web项目的文件上传和访问处理(核心知识)

    简介:讲解SpingBoot2.x使用 java -jar运行方式的图片上传和访问处理
    1、文件大小配置,启动类里面配置
        
            @Bean  
            public MultipartConfigElement multipartConfigElement() {  
                MultipartConfigFactory factory = new MultipartConfigFactory();  
                //单个文件最大  
                factory.setMaxFileSize("10240KB"); //KB,MB  
                /// 设置总上传数据总大小  
                factory.setMaxRequestSize("1024000KB");  
                return factory.createMultipartConfig();  
            }  
    2、打包成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文件
    3、文件上传和访问需要指定磁盘路径
        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} 
    4、文件服务器:fastdfs,阿里云oss,nginx搭建一个简单的文件服务器

开始

上传一个大文件

文件超过了最大的限制
把代码复制到application启动类里面
一定要是带@SpringBootConfiguration的类里面
SpringBootConfiguration注解里面包含了@Configuration这个注解
引入对应的包后。
启动应用。
上传的这个图片1.2M
上传成功了

打成jar包

打包当前项目

打包成功
打包后会放在target的目录里面
运行这个jar包
错误:找不到入口启动类
打包的时候需要一个maven的依赖
这是spring-boot提供的插件。帮我打包成一个jar包
再次打包
把压缩包解压出来
BOOT-INF:字节码文件和依赖的jar包
MAINFEST.MF:最主要的是Main-Class:类加载器 加载我们对应的应用
Start-Class:入口。刚才的jar包报错就是找到XdclassApplication
就是我们源码的这里

配置上传的固定路径

第二行配置最后加一行
这里先把上传路径写死到这里。因为我们还没有学习读取配置文件。之类暂时把路径写死
再次打包
运行 程序
上传一个图片
因为配置的是桌面上,所以上传到了桌面上
也就是配置的这个目录:User/jack/Desktop
可以直接访问这个图片

扩展知识

 

转载于:https://www.cnblogs.com/wangjunwei/p/11397504.html

你可能感兴趣的文章
thinkphp3.2.3 bug集锦
查看>>
[BZOJ 4010] 菜肴制作
查看>>
C# 创建 读取 更新 XML文件
查看>>
KD树
查看>>
VsVim - Shortcut Key (快捷键)
查看>>
C++练习 | 模板与泛式编程练习(1)
查看>>
HDU5447 Good Numbers
查看>>
08.CXF发布WebService(Java项目)
查看>>
java-集合框架
查看>>
RTMP
查看>>
求一个数的整数次方
查看>>
点云PCL中小细节
查看>>
铁路信号基础
查看>>
RobotFramework自动化2-自定义关键字
查看>>
[置顶] 【cocos2d-x入门实战】微信飞机大战之三:飞机要起飞了
查看>>
BABOK - 需求分析(Requirements Analysis)概述
查看>>
第43条:掌握GCD及操作队列的使用时机
查看>>
Windows autoKeras的下载与安装连接
查看>>
CMU Bomblab 答案
查看>>
微信支付之异步通知签名错误
查看>>