美文网首页
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