美文网首页
springboot jar包方式运行,文件上传及访问处理

springboot jar包方式运行,文件上传及访问处理

作者: 激扬文字 | 来源:发表于2019-05-11 21:25 被阅读0次

1、文件大小限制,通过配置信息限制文件上传的大小,即在启动类中进行配置。

@SpringBootConfiguration
@EnableAutoConfiguration
@ComponentScan
public class Demo2Application {

    public static void main(String[] args) {
        SpringApplication.run(Demo2Application.class, args);
    }

    /**
     * 限制文件上传的大小启动类
     * @return
     */
    @Bean
    public MultipartConfigElement multipartConfigElement(){
        MultipartConfigFactory factory = new MultipartConfigFactory();
        factory.setMaxFileSize("10KB");
        factory.setMaxRequestSize("10KB");
        return factory.createMultipartConfig();
    }
}

2、springboot打包
项目右键-run as->maven install


image.png

第一次时候pom.xml没有注释掉build报错

<!-- <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
    </build> -->

注释后就成功了。


image.png

3、pom.xml配置

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.1.4.RELEASE</version>
        <relativePath/> <!-- lookup parent from repository -->
    </parent>
    <groupId>com.xiaomi</groupId>
    <artifactId>demo2</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <name>demo2</name>
    <description>Demo project for Spring Boot</description>

    <properties>
        <java.version>1.8</java.version>
    </properties>

    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>
        <!-- 模板引擎 -->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-thymeleaf</artifactId>
        </dependency>
    </dependencies>

    <!-- <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
    </build> -->

</project>

4、启动jar包
进入jar包目,执行java -jar xx.jar,报错:

demo2-0.0.1-SNAPSHOT.jar中没有主清单属性

放开插件配置注释

<build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
    </build>

再次打包,成功。
5、再次启动,成功。


image.png
image.png

6、文件上传及访问处理
在application.properties中添加文件路径配置
如web.file.path=文件所在目录,再在spring.resources.static-locations=最后添加file:${web.file.path}

web.file.path=E:\img
spring.resources.static-locations=classpath:/META-INF/resources/,classpath:/resources/,classpath:/static/,classpath:/public/,classpath:/testxxx/,file:${web.file.path}

重启测试,直接以文件名访问,成功。


image.png

相关文章

网友评论

      本文标题:springboot jar包方式运行,文件上传及访问处理

      本文链接:https://www.haomeiwen.com/subject/lynxaqtx.html