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

网友投稿 306 2022-12-15


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

这篇文章主要介绍了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

%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n

%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n

utf-8

${logfile-dir}/ticket.log

${logfile-dir}/ticket.%i.log

1

5

1MB

创建项目启动类

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 初始化类

package com.seliote.smsbomber;

import org.springframework.boot.builder.SpringApplicationBuilder;

import org.springframework.boot.web.servlet.support.SpringBootServletInitializer;

/**

* 打 WAR 包 Servlet 初始化

*

* @author LiYangDi

* @since 2020/1/26

*/

public class ServletInitializer extends SpringBootServletInitializer {

@Override

protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) {

return builder.sources(Application.class);

}

}

修改 IDEA 的启动类,尝试启动项目

修改启动模块打包方式为 war, 修改启动模块的 pom.xml,project 节点下添加 war

org.springframework.boot

spring-boot-maven-plugin

sms-bomber

建一个 TestCtr,maven package 一下把 war 扔进 Tomcat 里体验一下

创建模块 persistence, service, web, common 层模块层模块,并配置相关依赖,根项目 pom.xml 里添加依赖 project 节点下添加,再依次

com.seliote

sms-bomber-common

${sms-bomber.version}

com.seliote

sms-bomber-persistence

${sms-bomber.version}

com.seliote

sms-bomber-service

${sms-bomber.version}

com.seliote

sms-bomber-web

${sms-bomber.version}

com.seliote

sms-bomber-start

${sms-bomber.version}

org.mariadb.jdbc

mariadb-java-client

${mariadb.version}

dependencies 节点下添加用于全局模块使用

com.seliote

sms-bomber-common

${sms-bomber.version} 等版本定义在 properties 标签下定义

persistence 模块的 pom.xml 下添加依赖

org.mariadb.jdbc

mariadb-java-client

runtime

org.springframework.boot

spring-boot-starter-data-jpa

service 模块 pom.xml 下添加

com.seliote

http:// sms-bomber-persistence

web 模块 pom.xml 下添加

com.seliote

sms-bomber-service

start 模块 pom.xml 下添加

com.seliote

sms-bomber-web

配置 SpringDataJpa

dev yml 下添加

spring:

datasource:

driver-class-name: org.mariadb.jdbc.Driver

url: jdbc:mariadb://127.0.0.1:3306/sms_bomber

username: sms_bomber

password: 123456!@#$%^qp

jpa:

database-platform: org.hibernate.dialect.MariaDB103Dialect

open-in-view: false

show-sql: true


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:Java日期与时间类原理解析
下一篇:spring中使用Mockito解决Bean依赖树问题方法
相关文章

 发表评论

暂时没有评论,来抢沙发吧~