Spring Boot(04):让你的Spring Boot应用“火力全开”,从零开始学习starter

举报
bug菌 发表于 2023/08/25 22:52:45 2023/08/25
【摘要】 本文将首先介绍Spring Boot的starter入门,包括如何创建Maven项目、如何添加starter依赖、如何编写代码。接着,我们将介绍如何使用Spring Boot的profiles功能,实现不同环境的自动配置。最后,我们将分别介绍如何在开发、测试和生产环境中使用Spring Boot,以及如何在不同环境中配置数据库、日志等。

1. 前言

        Spring Boot是一款非常流行的Java开发框架,其具有快速开发、自动化配置、内嵌服务器、易于扩展等特点,因此备受开发者欢迎。在日常开发中,我们经常需要在不同的环境中进行测试和部署,此时,如何实现开发、测试、生产环境的快速切换,成为了我们需要解决的问题。本文将介绍如何使用Spring Boot的starter入门,以及如何轻松实现开发、测试和生产环境的切换。

2. 摘要

        本文将首先介绍Spring Boot的starter入门,包括如何创建Maven项目、如何添加starter依赖、如何编写代码。接着,我们将介绍如何使用Spring Boot的profiles功能,实现不同环境的自动配置。最后,我们将分别介绍如何在开发、测试和生产环境中使用Spring Boot,以及如何在不同环境中配置数据库、日志等。

3. 正文

3.1 Spring Boot的starter入门

        首先,我们需要创建一个Maven项目,并在pom.xml中添加Spring Boot的starter依赖。以下是pom.xml的配置:

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter</artifactId>
    <version>2.4.0</version>
</dependency>

        接着,我们可以创建一个简单的Spring Boot应用程序。以下是一个示例:

@SpringBootApplication
public class Application {
    public static void main(String[] args) {
        SpringApplication.run(Application.class, args);
    }
}
        此时,我们已经成功创建了一个Spring Boot应用程序。接下来,我们可以添加更多的starter依赖,例如:
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-web</artifactId>
    <version>2.4.0</version>
</dependency>

        此时,我们的应用程序已经具备了Web开发的基本能力。

3.2 使用Spring Boot的profiles功能

        在实际开发中,我们经常需要在不同的环境中进行测试和部署,例如开发环境、测试环境、生产环境等。针对不同的环境,我们可能需要配置不同的数据库、日志等信息。为了解决这个问题,Spring Boot提供了profiles功能。

示例截图如下:

在Spring Boot中,我们可以通过在application.properties或application.yml中配置profiles信息。例如,以下是application.yml的配置:

spring:
  profiles:
    active: dev

---

spring:
  profiles: dev

server:
  port: 8080

logging:
  level:
    root: debug

---

spring:
  profiles: prod

server:
  port: 80

logging:
  level:
    root: warn

        在以上配置中,我们定义了两个profiles:dev和prod。当active profile为dev时,应用程序将使用8080端口,并将日志输出级别设置为debug。当active profile为prod时,应用程序将使用80端口,并将日志输出级别设置为warn。

3.3 在不同环境中使用Spring Boot

        在实际开发中,我们需要在不同的环境中使用Spring Boot。以下是在开发、测试和生产环境中使用Spring Boot的示例。

3.3.1 在开发环境中使用Spring Boot

        在开发环境中,我们可以使用开发者工具,例如Spring Tool Suite或IntelliJ IDEA等。此外,为了能够快速开发和测试应用程序,我们还可以在application.yml中添加一些默认配置,例如:

spring:
  application:
    name: myapp
  datasource:
    url: jdbc:mysql://localhost:3306/myapp_dev
    username: root
    password: root

        在以上配置中,我们配置了数据库连接信息,并使用myapp_dev作为默认的开发环境。

示例截图如下:

3.3.2 在测试环境中使用Spring Boot

        在测试环境中,我们需要运行测试用例,并进行自动化测试。以下是一个简单的测试用例示例:

@SpringBootTest
class ApplicationTests {

    @Test
    void contextLoads() {
    }

}

        在以上示例中,我们使用@SpringBootTest注解,表示该测试用例将启动一个Spring Boot应用程序的上下文,并测试是否能够正常加载。

示例截图如下:

3.3.3 在生产环境中使用Spring Boot

        在生产环境中,我们需要配置应用程序的服务器和数据库等信息。以下是一个示例:

spring:
  application:
    name: myapp
  datasource:
    url: jdbc:mysql://localhost:3306/myapp_prod
    username: root
    password: root

server:
  port: 8080

management:
  endpoints:
    web:
      exposure:
        include: health,info

        在以上示例中,我们配置了生产环境下的数据库连接信息、服务器端口、健康检查和信息端点等信息。

小结

        本文介绍了Spring Boot的starter入门和profiles功能,以及如何在不同的环境中使用Spring Boot。为了快速开发和测试应用程序,我们可以配置一些默认的开发环境信息;为了进行自动化测试,我们可以使用@SpringBootTest注解;为了部署应用程序,我们可以配置生产环境下的服务器和数据库等信息。使用Spring Boot,我们可以轻松实现开发、测试和生产环境的快速切换。

关于我

我是bug菌,CSDN | 阿里云 | 华为云 | 51CTO 等社区博客专家,历届博客之星Top30,掘金年度人气作者Top40,51CTO年度博主Top12,掘金 | InfoQ | 51CTO等社区优质创作者,全网粉丝合计15w+ ;硬核微信公众号「猿圈奇妙屋」,欢迎你的加入!免费白嫖最新BAT互联网公司面试题、4000G pdf电子书籍、简历模板等海量资料。

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。