首页 > 其他分享 >SpringBoot3

SpringBoot3

时间:2023-11-13 22:32:29浏览次数:38  
标签:场景 spring boot springframework SpringBoot3 org public

1>实例Demo

1 正文

idea创建空项目springboot3.

1 File >> New >> Project... >> Empty Project

2 项目springboot3,右键新建Model,boot3-01-demo

<!--所有的springboot项目都必须集成spring-boot-starter-parent--> 
<parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>3.0.5</version>
</parent>

<dependencies>
    <!--web开发的场景启动器 包含了springMVC json依赖等-->
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-web</artifactId>
    </dependency>
</dependencies>

3 创建HelloController

package com.lianying.boot.controller;

import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController  //相当于@Controller+@ResponseBody
public class HelloController {
    @GetMapping("/hello")
    public String hello(){
        return "Hello,SpringBoot3";
    }
}

4 创建com.lianying.boot.MainApplicaotion启动类

package com.lianying.boot;

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

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

运行main方法后,浏览去输入localhost:8080/hello。页面返回Hello,SpringBoot3

5 打包Jar。pom.xml添加

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

在maven窗口执行。或者执行 mvn clean package

SpringBoot3_尚硅谷

打包后的文件在target目录。

执行jar 。java -jar boot3-01-demo

2 本章总结

1 简化整合

导入相关的场景,拥有相关的功能。场景启动器

默认支持所有的场景 https://docs.spring.io/spring-boot/docs/current/reference/html/using.html#using.build-systems.starters

官方提供的场景 命名 spring-boot-starter-*

第三方提供的场景 命名 *-spring-boot-starter

2 简化开发

无需编写配置,直接开发业务

3 简化配置

application 集中式管理配置。配置基本都有默认值

4 简化部署

打包为可执行jar.

5 简化运维

使用外部applicatin文件

2>SpringBoot依赖管理机制

1 为什么导入starter-web所有相关依赖都导入进来?

  • 开发什么场景导入什么场景启动器
  • maven依赖床底顺序,A-B-C 。A就拥有B和C
  • 导入 场景启动器,启动器就把这个场景的所有核心以来全部导入进来

2 为什么不用写版本号

  • 每个boot项目都有一个父项目,spring-boot-starter-parent
  • parent的父项目是spring-boot-dependencies
  • 父项目版本仲裁中心,把所有常见的的jar依赖版本都声明好了

3 自定义版本

利用maven的就近原则。直接在当前的pom中生命版本号

3>自动配置机制

1 自动配置的Tomcat、SpringMVC等

  • 以前DispatcherServlet ViewResolver...
  • 现在自动配置好这些组件
  • 验证
@SpringBootApplication
public class MainApplication {
    public  static void main(String[] args){
        var d=SpringApplication.run(MainApplication.class,args);
        String i[]=d.getBeanDefinitionNames();
        for(String n:i){
            System.out.println(n);
        }
    }
}

2 默认扫描规则:只会扫描主程序所在包以及子包

3 自定义扫描路径

@SpringBootApplication(scanBasePackages="")

@ComponentScan()

4 配置默认值

配置文件的所有配置项是和某个类的对象值进行一一绑定的。

5 按需加载自动配置


标签:场景,spring,boot,springframework,SpringBoot3,org,public
From: https://blog.51cto.com/u_11387346/8354937

相关文章

  • SpringBoot3.x使用Swagger
    SpringBoot3.x使用Swagger当前开发主流是前后端分离,有完整文档可以使团队配合更加流畅Spring生态中通常使用springfox,但是当前springfox并不支持SpringBoot3.x版本使用替代产品:Springdoc.orgSpringdoc在v1.7.0版本之后不支持SpringBoot2.x和1.x!!!项目启动后,Swagger默认地址......
  • springboot3.1.5+文件上传+文件下载
    idea创建项目springbootdemo-download-upload加上thymeleaf模板maven依赖application.properties配置#thymeleaf页面缓存设置(默认为true)spring.thymeleaf.cache=false#单个上传文件大小限制(默认1MB)spring.servlet.multipart.max-file-size=10MB#总上传文件大小限制(默......
  • SpringBoot3特性——错误信息Problemdetails
    SpringFramework6实现了HTTPAPI规范RFC7807的问题详细信息。在本文中,我们将学习如何在SpringBoot3RESTAPI(使用SpringFramework6)中处理异常,并使用ProblemDetailsAPI提供错误响应。详见https://www.sivalabs.in/spring-boot-3-error-reporting-using-proble......
  • 一篇了解springboot3请求参数种类及接口测试
    SpringBoot3数据请求:原始数据请求://原始方式@RequestMapping("/simpleParam")publicStringsimpleParam(HttpServletRequestrequest){//获取请求参数Stringname=request.getParameter("name");Stringage=request.getParame......
  • SpringBoot3-监听器
    SpringApplicationRunListener该监听器,监听SpringBoot应用的生命周期1.自定义SpringApplicationRunListener实现类在META-INF/spring.factories中配置org.springframework.boot.SpringApplicationRunListener=自己的Listener,还可以指定一个有参数构造器,接受两个参数(SpringA......
  • SpringBoot3.0 + RocketMq 构建企业级数据中台[内附资料]
    点击下载:SpringBoot3.0+RocketMq构建企业级数据中台[内附资料]  提取码:3cnfSpringBoot3.0是SpringBoot框架的最新版本,它提供了愈加简单、快速和高效的方式来构建企业级应用程序。RocketMq是一款高性能的音讯中间件,能够完成散布式音讯传送和处置。将SpringBoot3.0和Rocket......
  • Swagger系列:SpringBoot3.x中使用Knife4j
    目录一、简介二、版本说明三、使用四、效果图一、简介官网:https://doc.xiaominfo.com/Knife4j是一个集Swagger2和OpenAPI3为一体的增强解决方案Knife4j是为JavaMVC框架集成Swagger生成Api文档的增强解决方案,前身是swagger-bootstrap-ui,致力于springfox-swagger......
  • ElasticSearch8.10.2接入SpringBoot3.+
    pom.xml文件引入依赖 <!--https://mvnrepository.com/artifact/org.elasticsearch.client/elasticsearch-rest-client--> <dependency> <groupId>co.elastic.clients</groupId> <artifactId>elasticsearch-java</artifactId> &l......
  • Springboot3
    Java17以上1.依赖<parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>3.0.0</version><relativePath/></parent>2.新特性2.1JakartaEE......
  • 快速搭建SpringBoot3.x项目
    写在前面上一小节中我们从0到1使用Vite搭建了一个Vue3项目,并集成了ElementPlus实现了一个简单的增删改查页面。这一篇中我们将使用IDEA快速搭建一个SpringBoot3.x的项目。一、创建项目1、File->new->project2、选择“SpringInitializr”,点击next;3、选择springboot版......