SpringBoot:一个简约的网盘系统之依赖的导入及YML的配置

Posted 语海

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SpringBoot:一个简约的网盘系统之依赖的导入及YML的配置相关的知识,希望对你有一定的参考价值。

1.pom.xml添加依赖,这里我需要引入MyBatis、pagehelper(分页插件)、druid(连接池)、log4j(日志)、fastjson(java对象与JSON互转)、FTP(上传下载)、mail(邮件任务)等

<!--引入Lombok-->
        <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
            <optional>true</optional>
        </dependency>

        <!--引入MyBatis-->
        <dependency>
            <groupId>org.mybatis.spring.boot</groupId>
            <artifactId>mybatis-spring-boot-starter</artifactId>
            <version>2.1.4</version>
        </dependency>

        <!--解决Java8时间API与数据库类型不匹配问题-->
        <dependency>
            <groupId>org.mybatis</groupId>
            <artifactId>mybatis-typehandlers-jsr310</artifactId>
            <version>1.0.2</version>
        </dependency>
        <dependency>
            <groupId>com.fasterxml.jackson.datatype</groupId>
            <artifactId>jackson-datatype-jsr310</artifactId>
            <version>2.9.7</version>
        </dependency>

        <!--引入Mybatis的ehCache的适配-->
        <dependency>
            <groupId>org.mybatis.caches</groupId>
            <artifactId>mybatis-ehcache</artifactId>
            <version>1.0.3</version>
        </dependency>

        <!--引入分页插件的依赖-->
        <dependency>
            <groupId>com.github.pagehelper</groupId>
            <artifactId>pagehelper</artifactId>
            <version>5.1.10</version>
        </dependency>

        <!--引入druid连接池 -->
        <dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>druid-spring-boot-starter</artifactId>
            <version>1.2.6</version>
        </dependency>

        <!--引入log4j -->
        <dependency>
            <groupId>log4j</groupId>
            <artifactId>log4j</artifactId>
            <version>1.2.17</version>
        </dependency>

        <!--引入mysql数据库驱动-->
        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <scope>runtime</scope>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-jdbc</artifactId>
        </dependency>

        <!--引入ThymeLeaf-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-thymeleaf</artifactId>
        </dependency>

        <!--引入fastjson-->
        <dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>fastjson</artifactId>
            <version>1.2.62</version>
        </dependency>

        <!--引入FTP 依赖-->
        <dependency>
            <groupId>commons-net</groupId>
            <artifactId>commons-net</artifactId>
            <version>3.6</version>
        </dependency>

        <!--引入邮件任务依赖-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-mail</artifactId>
        </dependency>

2.application.yml配置

# 配置项目名和session的过期时间
server:
  servlet:
    context-path: /beyond
    session:
      timeout: 60m
    encoding:
      force: true
      charset: UTF-8
      enabled: true
  tomcat:
    uri-encoding: UTF-8
# 日志的存放位置与级别
logging:
  file:
    name: log/beyond.log
  level:
    root: info
# 配置Mybatis
mybatis:
  config-location: classpath:mybatis/mybatis-config.xml
  mapper-locations: classpath:mybatis/mapper/*.xml
spring:
  # 配置邮件任务
  mail:
    username: 你的邮箱
    password: 密匙
    host: smtp.163.com
    port: 465
    protocol: smtps
  # 配置文件上传相关
  servlet:
    multipart:
      max-file-size: 1024MB
      max-request-size: 1024MB
  # 配置ThymeLeaf模板缓存
  thymeleaf:
    cache: false
  # 静态资源的访问路径
  mvc:
    static-path-pattern: /**
  # 配置数据源
  datasource:
    username: root
    password: rootroot
    url: jdbc:mysql://127.0.0.1:3306/数据库名?serverTimezone=Asia/Shanghai&useAffectedRows=true
    driver-class-name: com.mysql.cj.jdbc.Driver
    # 下面为连接池的补充设置,应用到上面所有数据源中
    #通过这句配置将druid连接池引入到我们的配置中,spring会尽可能判断类型是什么,然后根据情况去匹配驱动类。
    type: com.alibaba.druid.pool.DruidDataSource
    druid:
      # 初始化大小,最小,最大
      initial-size: 5
      min-idle: 5
      max-active: 20
      # 配置获取连接等待超时的时间
      max-wait: 60000
      # 配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒
      time-between-eviction-runs-millis: 60000
      # 配置一个连接在池中最小生存的时间,单位是毫秒
      min-evictable-idle-time-millis: 30000
      validation-query: SELECT 1 FROM DUAL
      test-while-idle: true
      test-on-borrow: false
      test-on-return: false
      # 打开PSCache,并且指定每个连接上PSCache的大小
      pool-prepared-statements: true
      max-pool-prepared-statement-per-connection-size: 20
      # 配置监控统计拦截的filters,stat监控统计、log4j日志记录、wall用于防御sql注入
      filters: stat,wall,log4j
      # 通过connectProperties属性来打开mergeSql功能;慢SQL记录
      connection-properties: druid.stat.mergeSql=true;druid.stat.slowSqlMillis=500
      # 合并多个DruidDataSource的监控数据
      use-global-data-source-stat: true
      # WebStatFilter配置,用于采集web-jdbc关联监控的数据
      web-stat-filter:
        enabled: true #是否启用StatFilter默认值false
        url-pattern: /* #表示过滤所有请求
        exclusions: /druid/*,*.js,*.gif,*.jpg,*.bmp,*.png,*.css,*.ico #设置哪些请求进行过滤排除掉,从而不进行统计
      # StatViewServlet配置,用于展示Druid的统计信息
      stat-view-servlet:
        enabled: true #是否启用StatViewServlet默认值false
        url-pattern: /druid/*
        reset-enable: true
        login-username: admin
        login-password: admin

以上是关于SpringBoot:一个简约的网盘系统之依赖的导入及YML的配置的主要内容,如果未能解决你的问题,请参考以下文章

网盘系统|基于SpringBoot的网盘系统的设计与实现

网盘系统|基于SpringBoot的网盘系统的设计与实现

网盘系统|基于SpringBoot的网盘系统的设计与实现

有啥好用的网盘搜索引擎可以推荐?

分享一个开源的网盘下载工具BaiduPCS-Go

有哪些好用的网盘搜索引擎推荐?超级搜虫部落等3款让你不再求人