Spring和Spring Boot的区别

简介: Spring和Spring Boot的主要区别,包括项目配置、开发模式、项目依赖、内嵌服务器和监控管理等方面,强调Spring Boot基于Spring框架,通过约定优于配置、自动配置和快速启动器等特性,简化了Spring应用的开发和部署过程。

概述:Spring和Spring Boot都是Java生态系统中广泛使用的框架,但它们有一些区别。下面是Spring和Spring Boot的主要区别:

  1. 项目配置:

    • Spring: 在Spring中,需要进行大量的XML配置,尤其是在配置数据源、事务管理等方面。
    • Spring Boot: Spring Boot采用了约定优于配置的原则,通过注解和默认配置,大大减少了项目的配置工作,提供了一种快速启动和运行的方式。
  2. 开发模式:

    • Spring: 需要手动配置各种组件,配置文件较多,开发相对繁琐。
    • Spring Boot: 提供了开箱即用的特性,通过自动配置和快速启动器(starter),开发者可以更轻松地开始项目。Spring Boot有一组默认的配置,可以根据需要进行覆盖。
  3. 项目依赖:

    • Spring: 开发者需要根据项目的需要手动引入相关的依赖,管理版本等。
    • Spring Boot: 使用了快速启动器(starter)的概念,可以根据项目类型和需求选择相应的启动器,它会自动处理依赖关系和版本管理。
  4. 内嵌服务器:

    • Spring: 在Spring中,需要手动配置和集成Servlet容器(如Tomcat)。
    • Spring Boot: 内置了常用的Servlet容器(如Tomcat、Jetty),可以通过简单的配置切换,无需额外的集成工作。
  5. 监控和管理:

    • Spring: 对于监控、管理、健康检查等功能,需要手动配置和整合。
    • Spring Boot: 提供了一些自动化的监控和管理功能,可以通过简单的配置启用,例如Spring Boot Actuator。

总体而言,Spring Boot是在Spring框架基础上构建的,旨在简化Spring应用的开发和部署。它强调约定优于配置、开箱即用的理念,使得开发者可以更专注于业务逻辑而不是繁琐的配置。

现状:除了一些非常老的项目使用spring之外,都在用spring boot

目录
相关文章
|
7月前
|
前端开发 Java 应用服务中间件
《深入理解Spring》 Spring Boot——约定优于配置的革命者
Spring Boot基于“约定优于配置”理念,通过自动配置、起步依赖、嵌入式容器和Actuator四大特性,简化Spring应用的开发与部署,提升效率,降低门槛,成为现代Java开发的事实标准。
|
7月前
|
前端开发 Java 微服务
《深入理解Spring》:Spring、Spring MVC与Spring Boot的深度解析
Spring Framework是Java生态的基石,提供IoC、AOP等核心功能;Spring MVC基于其构建,实现Web层MVC架构;Spring Boot则通过自动配置和内嵌服务器,极大简化了开发与部署。三者层层演进,Spring Boot并非替代,而是对前者的高效封装与增强,适用于微服务与快速开发,而深入理解Spring Framework有助于更好驾驭整体技术栈。
|
7月前
|
XML Java 应用服务中间件
【SpringBoot(一)】Spring的认知、容器功能讲解与自动装配原理的入门,带你熟悉Springboot中基本的注解使用
SpringBoot专栏开篇第一章,讲述认识SpringBoot、Bean容器功能的讲解、自动装配原理的入门,还有其他常用的Springboot注解!如果想要了解SpringBoot,那么就进来看看吧!
725 2
|
8月前
|
人工智能 Java 机器人
基于Spring AI Alibaba + Spring Boot + Ollama搭建本地AI对话机器人API
Spring AI Alibaba集成Ollama,基于Java构建本地大模型应用,支持流式对话、knife4j接口可视化,实现高隐私、免API密钥的离线AI服务。
6889 2
基于Spring AI Alibaba + Spring Boot + Ollama搭建本地AI对话机器人API
存储 JSON Java
906 0
|
8月前
|
人工智能 Java 开发者
【Spring】原理解析:Spring Boot 自动配置
Spring Boot通过“约定优于配置”的设计理念,自动检测项目依赖并根据这些依赖自动装配相应的Bean,从而解放开发者从繁琐的配置工作中解脱出来,专注于业务逻辑实现。
2769 0
|
前端开发 Java Maven
Spring 和 Spring Boot 之间的比较
本文对比了标准Spring框架与Spring Boot的区别,重点分析两者在模块使用(如MVC、Security)上的差异。Spring提供全面的Java开发基础设施支持,包含依赖注入和多种开箱即用的模块;而Spring Boot作为Spring的扩展,通过自动配置、嵌入式服务器等功能简化开发流程。文章还探讨了两者的Maven依赖、Mvc配置、模板引擎配置、启动方式及打包部署等方面的异同,展示了Spring Boot如何通过减少样板代码和配置提升开发效率。总结指出,Spring Boot是Spring的增强版,使应用开发、测试与部署更加便捷高效。
1647 11
|
安全 Java Apache
微服务——SpringBoot使用归纳——Spring Boot中集成 Shiro——Shiro 身份和权限认证
本文介绍了 Apache Shiro 的身份认证与权限认证机制。在身份认证部分,分析了 Shiro 的认证流程,包括应用程序调用 `Subject.login(token)` 方法、SecurityManager 接管认证以及通过 Realm 进行具体的安全验证。权限认证部分阐述了权限(permission)、角色(role)和用户(user)三者的关系,其中用户可拥有多个角色,角色则对应不同的权限组合,例如普通用户仅能查看或添加信息,而管理员可执行所有操作。
648 0
|
安全 Java 数据安全/隐私保护
微服务——SpringBoot使用归纳——Spring Boot中集成 Shiro——Shiro 三大核心组件
本课程介绍如何在Spring Boot中集成Shiro框架,主要讲解Shiro的认证与授权功能。Shiro是一个简单易用的Java安全框架,用于认证、授权、加密和会话管理等。其核心组件包括Subject(认证主体)、SecurityManager(安全管理员)和Realm(域)。Subject负责身份认证,包含Principals(身份)和Credentials(凭证);SecurityManager是架构核心,协调内部组件运作;Realm则是连接Shiro与应用数据的桥梁,用于访问用户账户及权限信息。通过学习,您将掌握Shiro的基本原理及其在项目中的应用。
487 0