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

相关推荐
counting money40 分钟前
Spring AI Alibaba 从入门到实战:构建企业级 AI 应用
java·人工智能·spring
城管不管2 小时前
MySQL 慢查询完整排查
java·服务器·jvm·数据库·mysql·spring·面试
风流 少年11 小时前
Spring AI 2.0:Memory
java·后端·spring
Java成神之路-14 小时前
Spring Cloud 微服务契约先行:为什么 Controller 建议要实现 Feign 接口?
spring·spring cloud·微服务
Flittly17 小时前
【雕虫大技】Agent 动态 Skill 供应链安全加固(三):输出校验与治理闭环实战
java·spring boot·spring
风流 少年18 小时前
Spring AI 2.0:MCP
java·后端·spring
风流 少年19 小时前
Spring AI 2.0:Tool
java·python·spring
爱敲键盘的猴子20 小时前
Java Spring -- 声明式事务控制
java·spring·事务控制
lv__pf2 天前
Spring配置类解析 【TL spring 11】
java·前端·spring
风流 少年2 天前
Spring AI 2.0:Hello World
java·人工智能·spring