首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >聚合工程整合 SpringBoot(七)

聚合工程整合 SpringBoot(七)

作者头像
高大北
发布2022-06-14 20:27:07
发布2022-06-14 20:27:07
2760
举报

该篇文章项目地址https://gitee.com/gtfgtf/ttchrcgx.git day02分支 在顶级项目中的 pom.xml 中配置如下类容

代码语言:javascript
复制
    <!-- 设置资源属性-->
    <properties>
        <maven.compiler.source>8</maven.compiler.source>
        <maven.compiler.target>8</maven.compiler.target>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
        <java.version>1.8</java.version>
    </properties>

    <!-- 依赖包版本管理 -->
    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.1.5.RELEASE</version>
        <relativePath/>
    </parent>

    <!-- 配置仓库地址,加速依赖包的下载 -->
    <repositories>
        <repository>
            <id>alimaven</id>
            <name>aliyun maven</name>
            <url>http://maven.aliyun.com/nexus/content/groups/public/</url>
            <layout>default</layout>
            <snapshots>
                <enabled>false</enabled>
            </snapshots>
        </repository>
        <repository>
            <id>spring-milestones</id>
            <name>Spring Milestones</name>
            <url>https://repo.spring.io/libs-milestone</url>
            <snapshots>
                <enabled>false</enabled>
            </snapshots>
        </repository>
    </repositories>

    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter</artifactId>
            <exclusions>
                <!--   排除 spring 自己的日志,后续需要整合其他的日志框架-->
                <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>
        <!-- 配置文件解析,boot 默认对 yml 支持,其他格式的需要引入该依赖-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-configuration-processor</artifactId>
            <optional>true</optional>
        </dependency>
    </dependencies>
api 项目

添加启动类 Application.java

代码语言:javascript
复制
package cn.mrcode.foodiedev;


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);
    }
}

添加测试 HelloController.java

代码语言:javascript
复制
package cn.mrcode.foodiedev.api.controller;

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

@RestController
public class HelloController {
    @GetMapping("/hello")
    public Object hello() {
        return "Hello Word";
    }
}

maven 和 gradle 使用上还不太相同,感觉每次陪着完都需要执行下 install,才能正常运行。

在 resources 下增加 application.yml

代码语言:javascript
复制
server:
  port: 9000

启动项目后访问 http://localhost:9000/hello 能响应信息则说明初步整合成功了。

有关包名的说明

下一章会讲解 SpringBoot 的自动装备内容,为了使用默认扫描配置,我们这里的策略是如下所示

代码语言:javascript
复制
cn.mrcode.foodiedev
  |- Application.java       # 放置的是 api 的 Application 类
	|- api
	|- pojo
  |- mapper

因为我们的启动应用在 api 里面,但是这里将 Application 放置在包 api 的同级目录下,那么它默认扫描的包路径则是 cn.mrcode.foodiedev,那么此路径下的其他模块被 api 引用之后,不需要额外的配置就可以扫描到他们里面的这些注解配置了

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • api 项目
    • 有关包名的说明
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档