Spring Boot和Spring MVC之间主要区别

Spring Boot和Spring MVC之间主要有以下区别:

  1. 目的不同:Spring Boot是一个用于快速构建现代应用程序的框架,它通过提供依赖管理、自动配置和其他高级功能来简化Spring的开发。而Spring MVC则是Spring框架的一个核心模块,它提供了一系列Web开发相关的组件,例如控制器和视图解析器等,以便于开发Web应用程序。

  2. 使用范围不同:Spring Boot可以用于创建任何类型的应用程序,从简单的命令行工具到Web应用程序和RESTful API,而Spring MVC则更适合于Web应用程序的开发。

  3. 基础设施不同:Spring Boot提供了充分的自动配置,可以使开发人员更快速地创建应用程序,而Spring MVC需要开发人员配置框架和容器。

  4. 控制反转方式不同:Spring Boot通过使用基于注解的方式来实现控制反转(IoC),而Spring MVC则使用XML或注解的方式实现。

总之,Spring Boot和Spring MVC在目的、使用场景、基础设施和控制反转方法等方面都存在差异。Spring Boot是一个用于快速构建现代应用程序的框架,而Spring MVC是一种Web应用程序开发框架。不过,Spring Boot的自动配置和依赖管理功能也可以用于简化Spring MVC的开发。


下面分别给出两个使用Spring Boot和不使用Spring Boot的例子代码:

 》使用Spring Boot的数据访问层(JDBC):

使用Spring Boot,我们只需使用以下pom.xml文件中的依赖项即可访问数据库:

<>
  <groupId>org.springframework.boot</groupId>
  <artifactId>spring-boot-starter-jdbc</artifactId>
</dependency>

接下来,我们可以将以下内容添加到application.properties文件中,以便配置JDBC连接池和数据库文件的路径:

spring.datasource.url=jdbc:h2:file:./data/demo spring.datasource.driverClassName=org.h2.Driver spring.datasource.username=spring spring.datasource.password=secret spring.h2.console.enabled=true

在我们的数据访问层中,我们可以使用以下代码访问数据库:

public List<Person> getPeople() {
   reuturn jdbcTemplate.query("SELECT id, name, age FROM person",
           (rs, rowNum) -> new Person(rs.getInt("id"), rs.getString("name"), rs.getInt("age")));
}

》没有使用Spring Boot的数据访问层(JDBC):

在没有使用Spring Boot的情况下,我们需要创建我们自己的DataSource类和JdbcTemplate类至少在我们的项目中需要。以下是示例代码:

@Configuration
public class DataSourceConfig {

    @Bean
    public DataSource dataSource() {
        DriverManagerDataSource dataSource = new DriverManagerDataSource();
        dataSource.setDriverClassName("org.h2.Driver");
        dataSource.setUrl("jdbc:h2:file:./data/demo");
        dataSource.setUsername("spring");
        dataSource.setPassword("secret");
        return dataSource;
    }

    @Bean
    public JdbcTemplate jdbcTemplate(DataSource dataSource) {
        return new JdbcTemplate(dataSource);
    }
}

在我们的数据访问层中,我们可以使用以下代码访问数据库:

public List<Person> getPeople() {
   return jdbcTemplate.query("SELECT id, name, age FROM person",
           (rs, rowNum) -> new Person(rs.getInt("id"), rs.getString("name"), rs.getInt("age")));
}

可以看到,使用Spring Boot可以大量减少我们需要编写和维护的代码,同时也不需要修改和添加一些用例管理的XML文件,使我们的代码看起来更简介和清晰。

  • 1
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

田猿笔记

写文章不容易,希望大家小小打赏

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值