首页 > 编程语言 >浅谈Java Spring Boot

浅谈Java Spring Boot

时间:2024-08-21 08:55:09浏览次数:9  
标签:Java 浅谈 Spring Boot 应用程序 application springframework org

一、基本介绍

Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程。该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置。通过这种方式,Spring Boot致力于在蓬勃发展的快速应用开发领域(rapid application development)成为领导者。

二、关键特性

  1. 自动配置:Spring Boot根据项目中添加的依赖自动配置Spring应用程序。例如,如果项目中添加了spring-boot-starter-web依赖,Spring Boot会自动配置Tomcat和Spring MVC。

  2. 独立运行:Spring Boot应用程序包含内嵌的HTTP服务器(如Tomcat、Jetty或Undertow),可以打包成一个独立的JAR文件,这样就可以通过简单的java -jar命令来运行。

  3. 无需XML配置:Spring Boot不需要使用XML配置文件,尽管它仍然支持XML配置,但推荐使用基于Java的配置。

  4. 微服务支持:Spring Boot非常适合微服务架构,可以与Spring Cloud等其他项目结合,以支持服务发现、配置管理等微服务特性。

  5. 社区和插件生态:Spring Boot拥有一个活跃的社区,提供了大量的插件和“Starters”,这些Starters是预先定义好的依赖集合,可以快速添加到项目中。

  6. 监控和管理:Spring Boot提供了多种监控和管理功能,包括健康检查、度量信息收集等。

  7. 配置外部化:Spring Boot支持从外部配置文件(如application.propertiesapplication.yml)中读取配置,使得配置与代码分离,便于不同环境下的配置管理。

  8. 安全性:Spring Boot与Spring Security集成,提供了一套安全自动配置,可以快速增加安全性支持。

  9. 测试支持:Spring Boot提供了对JUnit等测试框架的支持,使得编写和执行单元测试和集成测试变得更加容易。

三、基本结构

  • src/main/java:存放主要的Java代码。
  • src/main/resources:存放配置文件和静态资源。
    • application.properties 或 application.yml:Spring Boot的配置文件。
  • src/test/java:存放测试代码。

四、简单应用

创建一个简单的Spring Boot应用程序:

创建主应用程序类

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

@SpringBootApplication
public class MyApplication {

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

添加依赖:在pom.xml(Maven项目)或build.gradle(Gradle项目)中添加所需的依赖。

创建REST控制器

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

@RestController
public class MyController {

    @GetMapping("/")
    public String hello() {
        return "Hello, Spring Boot!";
    }
}

运行应用程序:使用Maven或Gradle的相应命令来运行应用程序,或者直接使用Spring Boot的打包和运行功能。

五、完整代码应用

下面是一个简单的Spring Boot应用程序的代码示例,它展示了如何创建一个基本的REST API服务。

步骤 1: 创建主应用程序类

首先,创建一个带有@SpringBootApplication注解的主类,这个注解是@Configuration, @EnableAutoConfiguration, 和 @ComponentScan的快捷方式。

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

@SpringBootApplication
public class MyApplication {

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

步骤 2: 创建REST控制器

然后,创建一个控制器类,使用@RestController注解来标记它是一个控制器,并使用@GetMapping注解来处理HTTP GET请求。

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

@RestController
public class MyController {

    // 处理根URL的GET请求
    @GetMapping("/")
    public String index() {
        return "Hello, Spring Boot!";
    }

    // 处理/api/users的GET请求
    @GetMapping("/api/users")
    public String listUsers() {
        return "List of users";
    }
}

步骤 3: 配置application.properties或application.yml

src/main/resources目录下创建application.properties文件,用于配置应用程序的属性,比如服务器端口。

properties:

# application.properties
server.port=8080

或者使用application.yml

# application.yml
server:
  port: 8080

步骤 4: 运行应用程序

使用你的IDE运行MyApplication类的main方法,或者如果你使用Maven或Gradle,可以通过以下命令来运行:

  • Maven: mvn spring-boot:run
  • Gradle: gradle bootRun

步骤 5: 访问应用程序

一旦应用程序运行起来,你可以使用浏览器或工具如curl或Postman来访问:

  • 访问根URL: http://localhost:8080/
  • 访问API端点: http://localhost:8080/api/users

附加:使用Spring Boot Actuator

Spring Boot Actuator提供了对应用程序的监控和管理功能。要添加Actuator,首先在pom.xmlbuild.gradle中添加Actuator依赖:

  • Maven:
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-actuator</artifactId>
</dependency>

  • Gradle:

gradle

implementation 'org.springframework.boot:spring-boot-starter-actuator'

然后在application.propertiesapplication.yml中配置Actuator的端点:

properties

# application.properties
management.endpoints.web.exposure.include=health,info

或者:

yaml

# application.yml
management:
  endpoints:
    web:
      exposure:
        include: health,info

现在,你可以访问Actuator的端点来获取应用程序的健康和信息状态:

  • 健康状态: http://localhost:8080/actuator/health
  • 应用程序信息: http://localhost:8080/actuator/info

这个示例展示了Spring Boot应用程序的基础结构和功能,包括创建REST控制器、配置应用程序属性和使用Spring Boot Actuator进行监控。

标签:Java,浅谈,Spring,Boot,应用程序,application,springframework,org
From: https://blog.csdn.net/a876106354/article/details/141377138

相关文章

  • 浅谈 Java Spring框架
    一、基本介绍Spring框架是由于软件开发的复杂性而创建的。Spring使用的是基本的JavaBean来完成以前只可能由EJB完成的事情。然而,Spring的用途不仅仅限于服务器端的开发。从简单性、可测试性和松耦合性角度而言,绝大部分Java应用都可以从Spring中受益。二、核心特性依......
  • Java面试题--JVM大厂篇之未来已来:为什么ZGC是大规模Java应用的终极武器?
           ......
  • java项目部署到linux
    手工部署打包获取打包的jar包将jar包放到linux中(可通过xftp软件)的usr/local/ruiji执行jar包java-jarjar包名称指定端口:java-jarjar包名称--server.port=端口号如果端口被占用,查看端口号命令netstat-tuln|grep:8080根据端口号杀死进程lsof-i:8......
  • java: 错误: 无效的源发行版:17
    错误信息java:错误:无效的源发行版:17原因这个错误通常表示你的Java编译器版本不支持你指定的Java版本。解决方式pom.xml版本改为18或8<properties><java.version>18</java.version></properties>设置:改完直接finish键盘输入1.8,按自己......
  • BT5 2011.4.社会工程学.1.JAVA
    4.社会工程学工具 内容简介第一部分:JavaAppletAttackMethod第二部分:CredentialHarvesterAttackMethod 第一部分JavaAppletAttackMethod 拓扑介绍 SET介绍TheSETisanadvanced,multi-function,andeasytousecomputerassistedsocialengineering......
  • Java微信授权登录小程序接口
    1.微信授权登录小程序的流程是什么微信授权登录小程序的流程是一个涉及前端和后端交互的过程,主要目的是让用户能够使用微信账号快速登录小程序,避免重复输入用户名和密码。以下是该流程的详细步骤:1.1前端操作(1)触发登录:用户在小程序中点击“登录”按钮或进入需要登录的页面时,系......
  • 利用Spring Boot实现微服务的配置中心
    利用SpringBoot实现微服务的配置中心大家好,我是微赚淘客返利系统3.0的小编,是个冬天不穿秋裤,天冷也要风度的程序猿!在微服务架构中,随着服务数量的增加,集中管理配置信息变得尤为重要。SpringCloudConfig提供了一个配置服务器,用于集中管理微服务的配置信息。本文将介绍如何利用Sp......
  • 构建Spring Boot应用的性能监控与优化
    构建SpringBoot应用的性能监控与优化大家好,我是微赚淘客返利系统3.0的小编,是个冬天不穿秋裤,天冷也要风度的程序猿!性能监控与优化是确保SpringBoot应用高效运行的关键环节。SpringBoot提供了多种机制来监控应用性能,并进行优化。本文将介绍如何构建SpringBoot应用的性能监控与......
  • Spring Boot集成Spring Cloud Netflix组件
    SpringBoot集成SpringCloudNetflix组件大家好,我是微赚淘客返利系统3.0的小编,是个冬天不穿秋裤,天冷也要风度的程序猿!SpringCloud是一个基于SpringBoot的微服务框架,它集成了多种微服务解决方案,包括服务发现、配置管理、消息总线等。Netflix组件是SpringCloud中的重要组成部......
  • 利用Spring Boot实现微服务的链路追踪
    利用SpringBoot实现微服务的链路追踪大家好,我是微赚淘客返利系统3.0的小编,是个冬天不穿秋裤,天冷也要风度的程序猿!在微服务架构中,一个请求可能会经过多个服务节点,链路追踪成为监控和诊断问题的关键技术。SpringBoot结合SpringCloudSleuth和Zipkin或其他追踪系统,可以有效地实......