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应用程序,并且不需要额外的配置文件。

相关推荐
AI人工智能+电脑小能手1 小时前
大白话说Java设计模式-26-策略模式(业务实战篇)
java·spring·设计模式·策略模式·支付系统·算法切换
刀锋00013 小时前
Java 工程师转 AI Agent 最短路径:用 Spring 的思维理解 Spring AI 2.0(附 LangChain4j 对照)
java·人工智能·spring boot·spring·ai agent
重生之我是Java开发战士4 小时前
【Java EE】Spring AOP :面向切面编程
java·spring·java-ee
凤山老林4 小时前
基于 Spring Batch 的海量数据迁移与批处理架构:分片、容错与断点续跑
java·spring boot·spring·架构·spring batch
gis开发之家5 小时前
Spring Boot 4 深度解析——参数接收大全:@RequestParam、@PathVariable、@RequestBody
java·spring boot·后端·spring
(轻舟已过万重山)5 小时前
D1 · 融合蓝图:Spring AI + 虚拟线程 + 服务网格——现代后端统一底座
java·人工智能·spring
音符犹如代码6 小时前
Varnish Cache 实战:反向代理缓存原理与 VCL 配置
java·spring·缓存
shuoshuohaohao6 小时前
Spring6
java·spring
JacksonMx8 小时前
企业级幂等方案
数据库·spring boot·spring·oracle
Bingo_BIG17 小时前
Java Spring 批量修改,实体、接口、方法的定义
java·spring