01SpringBoot创建项目

本文介绍了SpringBoot的背景及其简化开发的优势,包括自动配置、起步依赖和辅助功能。通过两种方式展示了如何创建SpringBoot工程,重点讲述了maven配置和引导类的编写。此外,还提及了SpringBoot的热部署配置和简化部署的方法,帮助开发者快速上手SpringBoot项目。
摘要由CSDN通过智能技术生成

01SpringBoot概述

现在互联网后端开发中,JavaEE占据了主导地位。对JavaEE开发,首选框架是Spring框架。在传统的Spring开发中,需要使⽤⼤量的与业务⽆关的XML配置才能使Spring框架运行起来,这点备受许多开发者诟病。随着Spring4.x发布,Spring已经完全脱离XML,只使用注解就可以运行项目。为了进⼀步简化Spring应用的开发,SpringBoot诞生了。它是由Pivotal团队提供的全新框架,其设计⽬的是简化Spring应用的搭建及开发过程,并迎合时下流行的分布式微服务设计思想,越来越多企业在使用SpringBoot。

之前开发javaEE项目的过程

1. web.xml配置:SpringMVC核⼼控制器(DispatchServlet),Spring容器监听器,编码过滤器....

2. Spring 配置:包扫描(service、dao),配置数据源,配置事务....

3. SpringMVC配置:包扫描(controller),视图解析器,注解驱动,拦截器,静态资源....

4. ⽇志配置

5. 少量业务代码

6. …

7. 部署 Tomcat 调试,每次测试都需要部署

8. …

以上步骤很繁琐,在使用SpringBoot后,超简单!无需配置!!无感Tomcat!超迅速搭建功能强大的整套 Web!

SpringBoot功能

1自动配置

Spring Boot的自动配置是一个运行时(更准确地说,是应用程序启动时)的过程,考虑了众多因素,才决定Spring配置应该用哪个,不该用哪个。该过程是SpringBoot自动完成的。

2起步依赖

起步依赖本质上是一个Maven项目对象模型(Project Object Model,POM),定义了对其他库的传递依赖,这些东西加在一起即支持某项功能。

简单的说,起步依赖就是将具备某种功能的坐标打包到一起,并提供一些默认的功能。

3辅助功能

提供了一些大型项目中常见的非功能性特性,如嵌入式服务器、安全、指标,健康检测、外部配置等。

注意:Spring Boot 并不是对 Spring 功能上的增强,而是提供了一种快速使用 Spring 的方式。

2创建SpringBoot工程

2.1方式1

采用maven搭建工程

步骤:

①创建Maven项目

参考博客:02idea中创建maven工程_技术改变世界-CSDN博客_idea创建maven工程

②导入SpringBoot起步依赖

<?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 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <!--继承SpringBoot⽗POM⽂件-->
  <parent>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <version>2.1.8.RELEASE</version>
  </parent>
  <groupId>org.example</groupId>
  <artifactId>hello</artifactId>
  <version>1.0-SNAPSHOT</version>

  <dependencies>
    <!--web 开发的相关依赖-->
    <dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter-web</artifactId>
    </dependency>
  </dependencies>

</project>

③编写引导类

/**
 * 引导类。 SpringBoot项目的入口
 */
@SpringBootApplication
public class HelloApplication {

    public static void main(String[] args) {
        SpringApplication.run(HelloApplication.class,args);
    }
}

@SpringBootApplication默认会扫描该配置类中的所有的Bean,并且会扫描该配置类相同包中和其子包下所有的bean

④定义Controller

@RestController
public class HelloController {

    @RequestMapping("/hello")
    public String hello(){
        return " hello Spring Boot !";
    }
}

⑤运行测试

2.2方式2

快速构建SpringBoot工程(本人使用21版idea)

 

 SpringBoot起步依赖原理分析

  • 在spring-boot-starter-parent中定义了各种技术的版本信息,组合了一套最优搭配的技术版本。

  • 在各种starter中,定义了完成该功能需要的坐标合集,其中大部分版本信息来自于父工程。

  • 我们的工程继承parent,引入starter后,通过依赖传递,就可以简单方便获得需要的jar包,并且不会存在版本冲突等问题。

3SpringBoot热部署

<!--spring-boot开发⼯具jar包,⽀持热部署-->
<dependency>
 <groupId>org.springframework.boot</groupId>
 <artifactId>spring-boot-devtools</artifactId>
</dependency>

但还需注意:加入坐标之后,如果想要代码立即生效,必须在修改代码之后进行代码构建。默认情况IDEA不会自动构建,需要手动构建。如图两处地方均可。

4简化部署

把项目打成jar包,直接在目标服务器执行即可。

 <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
    </build>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值