spring 和springBoot区别

Spring和Spring Boot都是用于构建Java应用程序的框架,但它们之间有一些重要的区别。

  1. Spring框架是一个全功能的企业级Java应用程序框架,提供了广泛的功能,包括依赖注入、AOP、事务管理、数据访问等。使用Spring框架需要手动配置许多细节,例如数据源、日志、Web服务器等。

  2. Spring Boot是Spring框架的扩展,旨在简化Spring应用程序的开发和部署。Spring Boot提供了自动配置和约定优于配置的原则,可以快速搭建和运行基于Spring的应用程序,减少了开发人员的工作量。

下面是一个简单的例子,展示了一个使用Spring框架和Spring Boot框架的Hello World应用程序。

使用Spring框架的Hello World应用程序

复制代码
// 定义一个简单的Controller
@Controller
public class HelloWorldController {
    @RequestMapping("/")
    @ResponseBody
    public String helloWorld() {
        return "Hello, World!";
    }
}

// 配置文件
@Configuration
@EnableWebMvc
public class AppConfig extends WebMvcConfigurerAdapter {
    @Bean
    public ViewResolver getViewResolver() {
        InternalResourceViewResolver resolver = new InternalResourceViewResolver();
        resolver.setPrefix("/WEB-INF/views/");
        resolver.setSuffix(".jsp");
        return resolver;
    }
}

使用Spring Boot的Hello World应用程序

复制代码
@SpringBootApplication
@RestController
public class HelloWorldApplication {
    public static void main(String[] args) {
        SpringApplication.run(HelloWorldApplication.class, args);
    }

    @RequestMapping("/")
    public String helloWorld() {
        return "Hello, World!";
    }
}

在这两个例子中,可以看到使用Spring框架需要手动配置Controller、配置文件等,而使用Spring Boot框架则可以通过@SpringBootApplication注解自动配置Spring应用程序,并且不需要额外的配置文件。

相关推荐
明夜之约7 分钟前
Spring Transaction 传播机制
java·spring
码语智行2 小时前
Spring Security自定义AuthenticationManager实现手机号/密码双认证
java·后端·spring
SuniaWang2 小时前
《AgentX 专栏》07-全链路可观测:用OpenTelemetry+Jaeger让每次AI对话都可追踪可复盘
java·人工智能·spring·架构·langchain·opentelemetry·agenx
fengxin_rou2 小时前
【从零开始的JUC并发第五章】:线程池详解
java·jvm·spring
yurenpai(27届找实习中)2 小时前
Spring AI 实战:从零实现 AI 对话的记忆与历史记录管理(附源码级解析)
java·spring·ai·prompt·word
宸津-代码粉碎机2 小时前
Spring AI企业级RAG进阶|文档智能分片调优、ES深度整合、接口限流熔断监控生产实战
java·开发语言·人工智能·后端·spring·elasticsearch·oracle
云烟成雨TD10 小时前
Spring AI Alibaba 1.x 系列【69】Token 用量统计
java·人工智能·spring
小江的记录本11 小时前
【JVM虚拟机】堆内存分代模型:年轻代(Eden+Survivor)、老年代、元空间Metaspace(附《思维导图》+《面试高频考点清单》)
java·前端·jvm·后端·python·spring·面试
木头程序员16 小时前
SSM框架学习笔记
java·开发语言·mysql·spring·maven
李白你好16 小时前
页面资产梳理 · 技术指纹识别 · Spring 端点探测
java·后端·spring