java Spring Boot的介绍与初体验

 更新时间:2022年01月21日 09:45:09   作者:ITKaven  
大家好,本篇文章主要讲的是java Spring Boot的介绍与初体验,感兴趣的同学赶快来看一看吧,对你有帮助的话记得收藏一下

Spring Boot 介绍

Spring Boot用于创建可运行的、独立的、生产级的基于Spring的应用程序。Spring BootSpring和第三方库持约定大于配置的观念,以便可以轻松上手。大多数Spring Boot应用程序只需要很少的配置。

Spring Boot可以通过使用java -jar或更传统的war包部署来启动Java应用程序,Spring Boot的目标是:

为所有Spring开发提供从根本上更快且可广泛访问的体验。开箱即用。提供一系列大型项目通用的非功能特性(例如嵌入式服务器、安全性、指标、健康检查和外部化配置)。没有代码生成,也不需要XML配置。

系统要求

Spring Boot 2.6.2需要Java 8,并且兼容Java 17(包括Java 17 ),还需要Spring Framework 5.3.14或更高版本,博主的Spring Boot系列博客都将基于Spring Boot 2.6.2,它是目前最新的正式版。

在这里插入图片描述

构建工具

Spring Boot为以下构建工具提供了显式构建支持:

Maven 3.5+Gradle 6.8.x 6.9.x 7.x

Servlet 容器

Spring Boot支持如下图所示的嵌入式Servlet容器:

在这里插入图片描述

可以将Spring Boot应用程序部署到任何兼容Servlet 3.1+的容器。

初体验

使用IDEA创建Spring Boot应用程序,如下图所示进行操作。

在这里插入图片描述

使用Spring Initializer构建Spring Boot项目比较方便,可以让我们选择需要的依赖、Spring Boot版本、语言和打包方式,并且还会自动生成项目常用文件(如配置文件、静态文件的包、启动类等)。当然也可以使用Maven构建Spring Boot项目,博主平时喜欢使用Maven构建项目(自己写启动类、配置文件和pom.xml即可,可以让我们更加熟悉构建Spring Boot项目的流程),Spring Initializer应该也是通过Maven来构建项目,只不过在构建项目时提供了一些便利。

在这里插入图片描述

选择依赖和Spring Boot版本,博主带大家体验一下用Spring Boot编写一个接口的方便,因此需要web依赖(webflux以后也会介绍)。

在这里插入图片描述

构建的Spring Boot项目的结构如下图所示:

在这里插入图片描述

pom.xml

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
    
    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.6.2</version>
        <relativePath/> <!-- lookup parent from repository -->
    </parent>
    
    <groupId>com.kaven</groupId>
    <artifactId>springboot</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    
    <name>springboot</name>
    <description>springboot</description>
    
    <properties>
        <java.version>1.8</java.version>
    </properties>
    
    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>
    </dependencies>

    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
    </build>

</project>

启动类:

package com.kaven.springboot;

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

@SpringBootApplication
public class SpringbootApplication {

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

@SpringBootApplication注解是启动类的关键,它会开启自动配置和组件扫描,大家现在可以不用管这些,以后博主都会详细介绍。SpringApplication.run()则会创建和管理应用上下文以及打印Banner等。

启动应用,如下图所示进行操作:

在这里插入图片描述

启动成功,如下图所示:

在这里插入图片描述

写一个Hellow World接口,根据习惯,将接口放在controller包下。

在这里插入图片描述

package com.kaven.springboot.controller;

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

@RestController
public class HelloWorldController {
    @GetMapping("/helloworld")
    public String helloWorld() {
        return "Hello World";
    }
}

@RestController是一个便利的注解,它组合了@Controller(带有此注解的类型被视为控制器)和@ResponseBody(指示方法的返回值应绑定到Web响应的Body中)注解。@GetMapping("/helloworld")注解定义了接口处理的请求类型(GET)和请求路径(/helloworld),用于处理请求。

重新启动应用,再访问接口,Spring Boot应用默认启动在8080端口上。

在这里插入图片描述

访问接口时,应用的控制台也有日志输出,DispatcherServlet是一种Servlet实现,可以用于将请求派发给指定的控制器中定义的接口,但它的作用不仅如此,以后博主也会详细介绍。

在这里插入图片描述

总结

到此这篇关于java Spring Boot的介绍与初体验的文章就介绍到这了,更多相关java Spring Boot内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • SpringMVC拦截器运行原理及配置详解

    SpringMVC拦截器运行原理及配置详解

    这篇文章主要介绍了SpringMVC拦截器运行原理及配置详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-08-08
  • VSCode 配置 Spring Boot 项目开发环境的全过程

    VSCode 配置 Spring Boot 项目开发环境的全过程

    两三年前曾经试过配置Java环境, 存在不少问题作罢. 最近搜了下相关的文章, 感觉VSCode对Java项目的支持比三年前完善了不少. 今天实际配置了一下环境, 把自己常用的功能过了一遍, 基本能跑通开发流程, 做个笔记,需要的朋友可以参考下
    2024-03-03
  • java实战小技巧之优雅的实现字符串拼接

    java实战小技巧之优雅的实现字符串拼接

    字符串拼接是我们在Java代码中比较经常要做的事情,就是把多个字符串拼接到一起,这篇文章主要给大家介绍了关于java实战小技巧之优雅的实现字符串拼接的相关资料,需要的朋友可以参考下
    2021-08-08
  • Java使用DSA密钥对生成XML签名的方法

    Java使用DSA密钥对生成XML签名的方法

    这篇文章主要介绍了Java使用DSA密钥对生成XML签名的方法,实例分析了java使用DSA密钥对生成XML签名的技巧,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-03-03
  • Java AtomicInteger类的重要方法和特性

    Java AtomicInteger类的重要方法和特性

    AtomicInteger是Java中的一个类,用于实现原子操作的整数,AtomicInteger类主要用于处理整数类型的原子操作,本文给大家介绍Java AtomicInteger类的重要方法和特性,感兴趣的朋友一起看看吧
    2023-10-10
  • Springboot之@Async不执行原因及分析

    Springboot之@Async不执行原因及分析

    这篇文章主要介绍了Springboot之@Async不执行原因及分析,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-09-09
  • Spring MVC文件请求处理MultipartResolver详解

    Spring MVC文件请求处理MultipartResolver详解

    这篇文章主要介绍了Spring MVC文件请求处理详解:MultipartResolver,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-11-11
  • 详解Java中的Reflection反射和暴力反射

    详解Java中的Reflection反射和暴力反射

    本文主要介绍了详解Java中的Reflection反射和暴力反射,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-06-06
  • 详解SpringBoot定制@ResponseBody注解返回的Json格式

    详解SpringBoot定制@ResponseBody注解返回的Json格式

    这篇文章主要介绍了详解SpringBoot定制@ResponseBody注解返回的Json格式,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-11-11
  • JdbcTemplate方法介绍与增删改查操作实现

    JdbcTemplate方法介绍与增删改查操作实现

    这篇文章主要给大家介绍了关于JdbcTemplate方法与增删改查操作实现的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者使用JdbcTemplate具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2019-11-11

最新评论