Springboot基础学习之初识SpringBoot

 更新时间:2021年05月20日 16:50:53   作者:IPostYellow  
今天带大家学习Springboot基础知识,文中有非常详细的图文解说及代码示例,对正在学习java基础的小伙伴们很有帮助,需要的朋友可以参考下

一、图示

spring再简化:SpringBoot-jar:内嵌tomacat;微服务架构!

在这里插入图片描述

二、springboot是什么

spring是一个为了解决企业级应用开发的复杂性而创建的,简化开发

三、spring是如何简化开发的?

为了降低Java开发的复杂性,Spring提供了以下四种关键策略:

1.基于pojo的轻量级和最小侵入性编程

2.通过IOC、依赖注入(DI)和面向接口实现松耦合

3.基于切面(AOP)和惯例进行声明式编程

4.通过切面和模板减少样式代码

四、springboot

springboot基于spring开发,springboot本身不提供spring框架的核心特性以及扩展功能,只是用于快速、敏捷地开发新一代基于spring框架的应用程序。也就是说,它并不是用来替代spring的解决方案,而是和spring框架紧密结合用于提升spring开发者体验的工具。springboot以约定大于配置的核心思想,默认帮我们进行了很多设置,多数springboot应用只需要很少的spring配置。同时它集成了大量常用的第三方库配置(例如Redis、MongoDB、Jpa、RabbitMQ、Quartz等等),springboot应用中这些第三方库几乎可以零配置的开箱即用。所以,springboot是整合了所有的框架,它不是什么新框架。

五、第一个spingboot程序

环境:

jdk1.8

maven 3.8.1

mysql 5.7

springboot 2.4.5

打开idea,点击File-New-Project

在这里插入图片描述

选中spring initializr

在这里插入图片描述

点击next

在这里插入图片描述

之后写的内容和maven中就一致了,再next

在这里插入图片描述

然后开始选需要的依赖,这里我们选Web里的springWeb依赖,这样就会帮我自动下载一些web相关的依赖并导入。

开始以后我们能看到项目里面有这些内容:

在这里插入图片描述

我们打开这个SpringbootstudyApplication

package com.hj.springbootstudy;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

//程序的主入口!不能删也不能改,相当于main!
@SpringBootApplication
public class SpringbootstudyApplication {
    //springApplication
    public static void main(String[] args) {
        SpringApplication.run(SpringbootstudyApplication.class, args);
    }

}

发现他是主函数文件,我们运行这个主函数,能够发现服务被启动了!

在这里插入图片描述

然后浏览器输入localhost:8080

能够看到我们的web项目已经被启动了!

在这里插入图片描述

我们在这个主函数文件目录下,新建以下老熟悉的文件夹:

在这里插入图片描述

这样就和之前我们项目开发看着就差不多了

再来看看pom.xml的内容

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.4.5</version>
        <relativePath/> <!-- lookup parent from repository -->
    </parent>
    <groupId>com.hj</groupId>
    <artifactId>springbootstudy</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <name>springbootstudy</name>
    <description>Demo project for Spring Boot</description>
    <properties>
        <java.version>1.8</java.version>
    </properties>
    <dependencies>
        <!--web依赖:tomcat,dispatcherServlet.xml都由依赖做-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
        <!--所有的springboot依赖都是spring-boot-starter开头的-->
        <!--单元测试-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>
    </dependencies>

    <build>
        <!--打jar包插件-->
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
    </build>

</project>

这里包括了:

  • parent:继承spring-boot-starter-parent的依赖管理,控制版本与打包内容等
  • dependencies:项目具体依赖,这里包含了spring-boot-starter-web用于实现HTTP接口(该依赖中包含了Spring MVC),官网对它的描述是:使用Spring MVC构建Web(包括RESTful)应用程序的入门在,使用Tomcat作为默认嵌入式容器。spring-boot-starter-test用于编写单元测试的依赖包。
  • build:构建配置部分,默认使用了spring-boot-maven-plugin,配合spring-boot-starter-parent就可以把spring boot应用打包成jar来直接运行

如果spring-boot-starter-web依赖没有被导入,你会发现一运行就结束了

到此这篇关于Springboot基础学习之初识SpringBoot的文章就介绍到这了,更多相关SpringBoot基础学习内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 如何获得spring代理对象的原对象

    如何获得spring代理对象的原对象

    这篇文章主要介绍了如何获得spring代理对象的原对象的操作,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-07-07
  • 详解J2EE开发的网站部署到阿里云服务器的方法

    详解J2EE开发的网站部署到阿里云服务器的方法

    这篇文章主要介绍了详解J2EE开发的网站部署到阿里云服务器的方法,需要的朋友可以参考下
    2018-01-01
  • 一文掌握JVM Safe Point

    一文掌握JVM Safe Point

    关于 Safe Point 是 JVM 中很关键的一个概念,但我估计有不少同学不是很懂,于是今天跟大家来深入聊聊 Safe Point,通过本文学习你会了解什么是 Safe Point?为啥需要 Safe Point?Safe Point 与 Stop the World 的关系?感兴趣的朋友一起看看吧
    2022-10-10
  • Java8中的lambda表达式入门教程

    Java8中的lambda表达式入门教程

    lambda表达式,即带有参数的表达式,为了更清晰地理解lambda表达式,下面通过示例代码给大家介绍java8 lambda 表达式入门教程,感兴趣的朋友一起看看吧
    2017-08-08
  • SpringDataMongoDB多文档事务的实现

    SpringDataMongoDB多文档事务的实现

    mongodb4.0也出来一段时间了,这个版本最为大众期待的特性就是支持了多文档事务。这篇文章主要介绍了SpringDataMongoDB多文档事务的实现,感兴趣的小伙伴们可以参考一下
    2018-11-11
  • springBoot自动配置的全过程

    springBoot自动配置的全过程

    这篇文章主要介绍了springBoot自动配置的全过程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-09-09
  • IDEA使用Maven创建module出现Ignored pom.xml问题及解决

    IDEA使用Maven创建module出现Ignored pom.xml问题及解决

    这篇文章主要介绍了IDEA使用Maven创建module出现Ignored pom.xml问题及解决方案,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-11-11
  • ConcurrentMap.putIfAbsent(key,value)用法实例

    ConcurrentMap.putIfAbsent(key,value)用法实例

    这篇文章主要介绍了ConcurrentMap.putIfAbsent(key,value)用法实例,分享了相关代码示例,小编觉得还是挺不错的,具有一定借鉴价值,需要的朋友可以参考下
    2018-02-02
  • Java代码实现Map和Object互转及Map和Json互转

    Java代码实现Map和Object互转及Map和Json互转

    这篇文章主要介绍了Java代码实现map和Object互转及Map和json互转的相关资料,需要的朋友可以参考下
    2016-05-05
  • Java递归查找层级文件夹下特定内容的文件的方法

    Java递归查找层级文件夹下特定内容的文件的方法

    这篇文章主要介绍了Java递归查找层级文件夹下特定内容的文件,本文通过示例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-06-06

最新评论