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工程时需要联网

目录
相关文章
|
6天前
|
Java API 开发工具
Spring Boot与Spring Cloud Config的集成
Spring Boot与Spring Cloud Config的集成
|
12天前
|
消息中间件 负载均衡 Java
最容易学会的springboot gralde spring cloud 多模块微服务项目
最容易学会的springboot gralde spring cloud 多模块微服务项目
|
12天前
|
JavaScript Java 数据安全/隐私保护
基于SpringBoot+Vue毕业生信息招聘平台系统【源码+论文+演示视频+包运行成功】_基于spring vue的校园招聘系统源码(2)
基于SpringBoot+Vue毕业生信息招聘平台系统【源码+论文+演示视频+包运行成功】_基于spring vue的校园招聘系统源码
20 0
基于SpringBoot+Vue毕业生信息招聘平台系统【源码+论文+演示视频+包运行成功】_基于spring vue的校园招聘系统源码(2)
|
7天前
|
XML 前端开发 Java
Spring Boot与Spring MVC的区别和联系
Spring Boot与Spring MVC的区别和联系
|
12天前
|
JavaScript Java 关系型数据库
基于SpringBoot+Vue毕业生信息招聘平台系统【源码+论文+演示视频+包运行成功】_基于spring vue的校园招聘系统源码(1)
基于SpringBoot+Vue毕业生信息招聘平台系统【源码+论文+演示视频+包运行成功】_基于spring vue的校园招聘系统源码
15 0
|
12天前
|
Java API 网络架构
Spring Boot与Spring Cloud Gateway的集成
Spring Boot与Spring Cloud Gateway的集成
|
13天前
|
前端开发 Java 数据库连接
Spring6(一):入门案例
Spring6(一):入门案例
11 0
|
3天前
|
JavaScript Java 测试技术
基于SpringBoot+Vue+uniapp的房屋租赁App的详细设计和实现(源码+lw+部署文档+讲解等)
基于SpringBoot+Vue+uniapp的房屋租赁App的详细设计和实现(源码+lw+部署文档+讲解等)
基于SpringBoot+Vue+uniapp的房屋租赁App的详细设计和实现(源码+lw+部署文档+讲解等)
|
3天前
|
JavaScript Java 测试技术
基于SpringBoot+Vue+uniapp的武汉市公交路线查询系统的详细设计和实现(源码+lw+部署文档+讲解等)
基于SpringBoot+Vue+uniapp的武汉市公交路线查询系统的详细设计和实现(源码+lw+部署文档+讲解等)