SpringBoot简介、案例步骤及与Spring的对比

简介: SpringBoot简介、案例步骤及与Spring的对比

一、SpringBoot简介

SpringBoot由由Pivotal团队提供的全新框架,其设计目的是用来简化Spring应用的初始化搭建以及开发过程。使用Spring框架后已经简化了我们的开发。而SpringBoot又是对Spring开发进行简化的,可想而知,SpringBoot使用的简单及广泛性。


以SpringMVC开发为例:


1、创建工程,并在pom.xml配置文件中配置所依赖的坐标

<dependencies>
        <dependency>
            <groupId>javax.servlet</groupId>
            <artifactId>javax.servlet-api</artifactId>
            <version>3.1.0</version>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-webmvc</artifactId>
            <version>5.2.10.RELEASE</version>
        </dependency>
    </dependencies>

2、编写web3.0配置类

public class ServletContainersInitConfig extends AbstractAnnotationConfigDispatcherServletInitializer {
    protected Class<?>[] getRootConfigClasses() {
        return new Class[]{SpringConfig.class};
    }
    protected Class<?>[] getServletConfigClasses() {
        return new Class[]{SpringMvcConfig.class};
    }
    protected String[] getServletMappings() {
        return new String[]{"/"};
    }
}

3、编写SpringMVC配置类

@Configuration
@ComponentScan("com.itheima.controller")
@EnableWebMvc
public class SpringMvcConfig {
}

4、编写Controller类

@RestController
@RequestMapping("/books")
public class BookController {
    @Autowired
    private BookService bookService;
    @GetMapping("/{id}")
    public Result getById(@PathVariable Integer id) {
        Book book = bookService.getById(id);
        Integer code = book != null ? Code.GET_OK : Code.GET_ERR;
        String msg = book != null ? "" : "数据查询失败,请重试!";
        return new Result(code,book,msg);
    }
}

从上面的SpringMVC程序开发可以看出,前三步都是在搭建环境,而且这三部基本都是固定的。SpringBoot就是对这三部进行简化的。

二、SpringBoot入门案例

SpringBoot开发步骤如下:


● 创建新模块,选择Spring初始化,并配置模块相关基础信息

● 选择当前模块需要使用的技术集

● 开发控制器类

● 运行自动生成的Application类


创建新模块

67f0039daac24d28840ee627dd8bbe45.png

选择Spring Initializr,用来创建SpringBoot工程,在Module SDK中选择我们安装的JDK版本

a1ed8eade63f4dfb94b61ccd6a0f090a.png

3、对SpringBoot工程进行相关设置

d7cd865e3ef64cf8a92c266eb675f6cc.png

注意:打包方式这里需要设置为Jar


因为我们需要开发一个web程序,使用到了SpringMVC技术,所有勾选Spring web

49d989fcd8634757b8f71ae0b14f3ab8.png

最后不需要任何修改,直接点击Finish完成SpringBoot工程的构建。


经过以上步骤,我们自动生成了一个Application类,而该类在启动服务器的时候用到

1ae4cce8b02a4c05b4f9259c6cc7f35e.png

注意:

1、在创建的工程中不需要创建配置类

2、创建好的项目会自动生成其他一些文件,而这些文件目前对我们来说没有任何作用,所以我们可以将这些文件删除,可以删除的目录文件如下:

.mvn
.gitignore
.HELP.md
mvnw
mvnw.cmd


创建Controller类

@RestController 
@RequestMapping("/books") 
public class BookController { 
    @GetMapping("/{id}") 
    public String getById(@PathVariable Integer id){ 
        System.out.println("id ==> "+id); 
        return "hello , spring boot!"; 
    } 
}

启动服务器


运行SpringBoot工程不需要使用本地的Tomcat和插件,只允许项目com.itheima包下的Application类,我们就能在控制台看到如下信息:

93c905c21f87435c9d7db3d7fd837978.png

使用Postman工程测试程序

6031eb7f492048bfaecf56edeb1e57ca.png

通过上面的案例,可以看到使用SpringBoot进行开发,使整个开发变得很简单。

三、Spring和SpringBoot对比

Spring程序和SpringBoot程序对比

68463d4ee98a47a38a3b97e8f79cad32.png

坐标

Spring程序中坐标需要自己编写,而且坐标非常多

SpringBoot程序中的坐标是我们在创建工程时进行勾选自动生成的


web3.0配置类

Spring程序需要我们自己编写这个配置类

SpringBoot程序不需要我们自己书写


配置类

Spring/SpringMVC程序的配置类需要自己书写,而SpringBoot程序则不需要书写


注意:基于IDEA的Spring Initializr快速构建SpringBoot工程时需要联网

目录
相关文章
|
1月前
|
JSON 安全 算法
|
29天前
|
Java API Spring
在 Spring 配置文件中配置 Filter 的步骤
【10月更文挑战第21天】在 Spring 配置文件中配置 Filter 是实现请求过滤的重要手段。通过合理的配置,可以灵活地对请求进行处理,满足各种应用需求。还可以根据具体的项目要求和实际情况,进一步深入研究和优化 Filter 的配置,以提高应用的性能和安全性。
|
22天前
|
消息中间件 NoSQL Java
springboot整合常用中间件框架案例
该项目是Spring Boot集成整合案例,涵盖多种中间件的使用示例,每个案例项目使用最小依赖,便于直接应用到自己的项目中。包括MyBatis、Redis、MongoDB、MQ、ES等的整合示例。
80 1
|
1月前
|
Java 测试技术 开发者
springboot学习四:Spring Boot profile多环境配置、devtools热部署
这篇文章主要介绍了如何在Spring Boot中进行多环境配置以及如何整合DevTools实现热部署,以提高开发效率。
67 2
|
1月前
|
前端开发 Java 程序员
springboot 学习十五:Spring Boot 优雅的集成Swagger2、Knife4j
这篇文章是关于如何在Spring Boot项目中集成Swagger2和Knife4j来生成和美化API接口文档的详细教程。
108 1
|
1月前
|
Java API Spring
springboot学习七:Spring Boot2.x 拦截器基础入门&实战项目场景实现
这篇文章是关于Spring Boot 2.x中拦截器的入门教程和实战项目场景实现的详细指南。
28 0
springboot学习七:Spring Boot2.x 拦截器基础入门&实战项目场景实现
|
1月前
|
Java API Spring
springboot学习六:Spring Boot2.x 过滤器基础入门&实战项目场景实现
这篇文章是关于Spring Boot 2.x中过滤器的基础知识和实战项目应用的教程。
27 0
springboot学习六:Spring Boot2.x 过滤器基础入门&实战项目场景实现
|
21天前
|
JavaScript NoSQL Java
CC-ADMIN后台简介一个基于 Spring Boot 2.1.3 、SpringBootMybatis plus、JWT、Shiro、Redis、Vue quasar 的前后端分离的后台管理系统
CC-ADMIN后台简介一个基于 Spring Boot 2.1.3 、SpringBootMybatis plus、JWT、Shiro、Redis、Vue quasar 的前后端分离的后台管理系统
34 0
|
1月前
|
Java Spring
springboot 学习十一:Spring Boot 优雅的集成 Lombok
这篇文章是关于如何在Spring Boot项目中集成Lombok,以简化JavaBean的编写,避免冗余代码,并提供了相关的配置步骤和常用注解的介绍。
103 0
下一篇
无影云桌面