当前位置 主页 > 网站技术 > 代码类 >

    SpringBoot多模块项目框架搭建过程解析

    栏目:代码类 时间:2020-01-29 12:10

    这篇文章主要介绍了SpringBoot多模块项目框架搭建过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

    创建根项目,New Project 创建一个名为 sms-bomber 的 SpringBoot 新项目,打包为 JAR 的即可,这里只添加 Lombok 与 spring-boot-starter-web 依赖,这两个依赖会传递给所有子模块,删除创建完成的项目中的 .mvn\ src\ mvnw mvnw.cmd

    创建启动模块,根目录项目名上右键 New -> Model 选择 Maven 类型,不要选择 create from archetype,Parent 属性选择刚才创建的根项目,先创建一个 ${PREFIXE}-start 的模块,用于启动项目,start 模块 resources 目录下创建

    server:
     servlet:
      # 项目上下文路径
      context-path: /sms-bomber
    
    spring:
     main:
      # 关闭 banner
      banner-mode: off
     profiles:
      # 测试环境
      active: dev-mysql
      # 生产环境
      # active: prod-mysql

    以及 logback.xml

    <?xml version="1.0" encoding="UTF-8"?>
    <configuration scan="true" scanPeriod="30 seconds">
    
      <!-- FIXME 记得更改如下配置 -->
      <!-- CONSOLE/FILE -->
      <property name="output-ref" value="CONSOLE" />
      <property name="logfile-dir" value="D:/Tmp/Log" />
    
      <appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender">
        <encoder>
          <pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</pattern>
        </encoder>
      </appender>
    
      <appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
        <encoder>
          <pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</pattern>
          <charset>utf-8</charset>
        </encoder>
        <file>${logfile-dir}/ticket.log</file>
        <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
          <fileNamePattern>${logfile-dir}/ticket.%i.log</fileNamePattern>
          <minIndex>1</minIndex>
          <maxIndex>5</maxIndex>
        </rollingPolicy>
        <triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
          <maxFileSize>1MB</maxFileSize>
        </triggeringPolicy>
      </appender>
    
      <root level="INFO">
        <appender-ref ref="${output-ref}" />
      </root>
      <!-- 指定包的日志等级 -->
      <!-- 使用 additivity="true" 会同时使用 appender-ref -->
      <logger name="com.seliote.smsbomber" level="DEBUG" additivity="false">
        <appender-ref ref="${output-ref}" />
      </logger>
    
    </configuration>

    创建项目启动类

    package com.seliote.smsbomber;
    
    import org.springframework.boot.SpringApplication;
    import org.springframework.boot.autoconfigure.SpringBootApplication;
    
    /**
     * 项目启动类
     *
     * @author LiYangDi
     * @since 2020/1/26
     */
    @SpringBootApplication(scanBasePackages = "com.seliote.smsbomber")
    public class Application {
    
      public static void main(String... args) {
        SpringApplication.run(Application.class, args);
      }
    }

    创建 Servlet 初始化类