spring:详解spring boot

spring的优缺点

虽然Spring的组件代码是轻量级的,但它的配置却是重量级的。一开始,Spring用XML配置,而且是很多XML配

置。Spring 2.5引入了基于注解的组件扫描,这消除了大量针对应用程序自身组件的显式XML配置。Spring 3.0引入

了基于Java的配置,这是一种类型安全的可重构配置方式,可以代替XML。

所有这些配置都代表了开发时的损耗。因为在思考Spring特性配置和解决业务问题之间需要进行思维切换,所以编

写配置挤占了编写应用程序逻辑的时间。和所有框架一样,Spring实用,但与此同时它要求的回报也不少。

除此之外,项目的依赖管理也是一件耗时耗力的事情。在环境搭建时,需要分析要导入哪些库的坐标,而且还需要

分析导入与之有依赖关系的其他库的坐标,一旦选错了依赖的版本,随之而来的不兼容问题就会严重阻碍项目的开

发进度。

spring boot

Spring Boot是由Pivotal公司于2011年发起的开源项目,旨在解决Spring应用的配置和部署问题。通过自动化和简化这些过程,Spring Boot让开发者能够更加专注于应用的开发,而不是维护基础设施。

Spring 框架是为了简化开发的,而 SpringBoot 是为了简化 Spring 开发的,由此可见,使用 SpringBoot 开发将会更加的方便简捷。

SpringBoot不是对Spring功能上的增强,而是提供了一种快速使用Spring的方式

特点

  • 功能集成:Spring Boot提供了大量的Starter POMs,可以方便地与各种常见技术整合,如JPA、Thymeleaf、MyBatis等。这大大简化了与其他技术的整合过程。而Spring MVC主要用于构建Web层,与其他技术整合需要自己配置。
  • 启动方式:Spring Boot可以创建独立的Spring应用程序,内嵌Tomcat或Jetty容器,通过main方法就可以启动应用,无需部署在Web服务器上。而Spring MVC的项目通常需要部署在Web服务器上,如Tomcat、Jetty等。

代码

pom.xml

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.4.5</version>
        <relativePath/> <!-- lookup parent from repository -->
    </parent>
    <groupId>com.springtest</groupId>
    <artifactId>mySpringTest</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <name>mySpringTest</name>
    <description>mySpringTest</description>
    <properties>
        <java.version>1.8</java.version>
    </properties>
    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-data-jdbc</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-devtools</artifactId>
            <scope>runtime</scope>
            <optional>true</optional>
        </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>

入口文件MySpringTestApplication.java

js 复制代码
package com.springtest.myspringtest;

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

@SpringBootApplication
public class MySpringTestApplication {

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

}

接下来就可以写接口了,可以使用 spring MVC 中的那些注解,例如 @RequestMapping

相关推荐
CarIise3 分钟前
Spring MVC 请求参数绑定与常用注解2
java·spring·mvc
七夜zippoe10 分钟前
Spring Boot 接通义千问:从拿 Key 到第一个对话接口跑通(保姆级)
java·spring boot·后端
SimonKing11 分钟前
别再花钱调 OCR 接口了!这个国产开源工具,免费还能离线跑
java·后端·程序员
Nebula_g11 分钟前
SpringBoot企业级实战项目—云禾外卖—SpringBoot常用注解解析
java·网络·数据库·spring boot·后端·spring·javase
const_qiu13 分钟前
第三章 07:3.9 能力收束与统一入口
java·人工智能
const_qiu16 分钟前
第三章 05:3.7 结构化输出与程序化消费
java·人工智能
企业数字化笔记42 分钟前
租户停用后数据和任务怎么处理?冻结、恢复与保留策略的实现
android·java·spring boot
CarIise1 小时前
Spring MVC 请求参数绑定与常用注解
java·spring·mvc
vx_Biye_Design1 小时前
PHP中医养生馆预约系统60841-计算机课程设计、毕业设计
vue.js·spring boot·后端·mysql·php·课程设计·express
一条泥憨鱼1 小时前
AI Agent 安全实践:从 MCP 工具调用到 Java 权限校验
java·人工智能·安全