基于Spring boot 项目的分层设计与聚合工程

maven聚合项目

 在一个maven聚合项目中,可以分为common.jar、pojo.jar、mapper.jar、service.jar、controller.jar、api.jar,将这些模块全部放在一个pom中。

如图所示的一个maven聚合工程。

在idea中构建一个聚合工程步骤

创建project

在idea中点击上图所示按钮

在页面中选择maven,选择相应的jdk版本,然后点击next按钮,出现下图界面

在页面中填上相应的内容并点击next按钮,进入下一步操作,如下图所示

在界面的对应输入框中填入相应的信息,并点击finish按钮完成一个maven项目的创建

​创建子工程的这个界面和创建maven项目的界面一样的,我们还是选择maven并选中相应的jdk版本,然后点击next按钮。

当按照图所示操作完成后,出现下面的窗口,填写相应的内容并点击按钮

​依次完成后续操作:

当点击finish后,我们maven里面就会创建出子模块

然后我们以同样的方式生成pojo、mapper、service、api等子模块

在子模块与子模块之间,如果要相互使用资源,需要在子模块之间构建依赖,例如,pojo需要使用common中的资源,则在pojo的pom文件中,需要构建如下的依赖:

<dependencies>
    <dependency>
        <groupId>com.lqkj</groupId>
        <artifactId>frame-common</artifactId>
        <version>1.0-SNAPSHOT</version>
    </dependency>
</dependencies>

在mapper中需要依赖持久化操作,需要pojo中的持久化对象,需要在mapper的pom中,构建对pojo的依赖:

<dependencies>
    <dependency>
        <groupId>com.lqkj</groupId>
        <artifactId>frame-pojo</artifactId>
        <version>1.0-SNAPSHOT</version>
    </dependency>
</dependencies>

在service中需要依赖mapper,构建对mapper的依赖:

<dependencies>
    <dependency>
        <groupId>com.lqkj</groupId>
        <artifactId>frame-mapper</artifactId>
        <version>1.0-SNAPSHOT</version>
    </dependency>
</dependencies>

在api接口层,会调用service的方法,因此需要构建对api的依赖:

<dependencies>
    <dependency>
        <groupId>com.lqkj</groupId>
        <artifactId>frame-service</artifactId>
        <version>1.0-SNAPSHOT</version>
    </dependency>
</dependencies>

到此,我们整个的聚合工程就构建好了,构建完成之后,通过idea开发工具将各个子模块进行安装,如图所示

在主工程下面,找到install,点击,在控制台输出BUILD SUCCESS,表示我们的聚合工程安装成功。

聚合工程项目构建之后要运行起来,还需要将spring boot的依赖放入pom中,下面将介绍下搭建spring boot的步骤:

PS:1-3都是在顶级工程的pom文件中进行操作

1、引入依赖parent

<parent>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <version>2.6.7</version>
    <relativePath/> <!-- lookup parent from repository -->
</parent>

2、设置资源属性

<properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
    <java.version>11</java.version>
</properties>

3、引入依赖dependency

<dependencies>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter</artifactId>
        <exclusions>
            <exclusion>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter-logging</artifactId>
            </exclusion>
        </exclusions>
    </dependency>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-web</artifactId>
    </dependency>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-configuration-processor</artifactId>
    </dependency>
</dependencies>

4、在子工程api中的resources目录下,添加application.yml

在弹出框中输入application.yml文件名,点击保存

5、在api子工程中再创建一个包com.lqkj,创建完成如图所示

6、在新建的包下面创建一个Application.java文件,该文件内容

package com.lqkj;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;


@SpringBootApplication
public class Application {

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

现在整个的spring boot就已经搭建起来了,我们下面写一个测试类进行验证

还是在api子工程中新建一个controller包,再新建一个BaseController.java

package com.lqkj.controller;

import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;

/**
 * @ClassName: BaseController
 * @Author: A
 * @Data: 2022年04月25日 01时11分
 * @Description:
 * @Company: 
 * @Version: 1.0
 */

@RestController
public class BaseController {

    @GetMapping("test")
    public String test(){
        return "欢迎,Spring Boot!!!";
    }
}

然后在右侧install一下,

在install完成后,运行Application.java,当控制台出现如下内容:

​至此,我们的聚合工程搭建完毕!!!

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值