SpringBoot---springboot的特性

简化配置

在如果自己需要修改一些Mvc、tomcat等相关的配置,只需要建立一个 application.properties 配置文件。名字是死的。在里面就能设置你想改的配置。对于想改的配置不知道对应的key可以去SpringBoot的官方文档找到ApplicationProperties这个选项,在里面就能找到对应的各种选项

简化部署

在学习MVC时,需要自己在配置文件中声明打包类型为war,但是在SpringBoot中可以直接将项目打包为一个可执行的jar包【他里面有编译完成的文件和运行时所需要的所有依赖】,引入SpringBoot的插件即可。这个插件在官方文档也有。

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

使用Maven工具将项目打包。然后找到jar所在的位置,进入命令行。使用 java -jar jar包的名字。就能把jar包部署好,在浏览器访问也有回应

依赖管理

SpringBoot需要引入一个父项目

<parent>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <version>2.6.1</version>
</parent>
在父项目里面,看见了父项目的父项目

<parent>
  <groupId>org.springframework.boot</groupId>
  <artifactId>spring-boot-dependencies</artifactId>
  <version>2.6.1</version>
</parent>

在spring-boot-dependencies里面发现都是使用SpringBoot时可能用到的依赖。这样就保证我们在使用SpringBoot工作时免去了依赖版本控制问题。

如果在使用时需要调整依赖版本,需要进入spring-boot-dependencies里面找到依赖对应的key,然后在自己工程的pom文件里,对想要修改的依赖进行版本修改。以mysql-connector-java为例

在spring-boot-dependencies里面key是<mysql.version>的,此时版本为8.0.27

<mysql.version>8.0.27</mysql.version>
....
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>${mysql.version}</version>

所以在pom文件中这样修改

<!--maven就近原则自己设置mysql-connect版本-->
<properties>
    <mysql.version>8.0.21</mysql.version>
</properties>
​
​
<!--引入SpringBoot的依赖-->
<dependencies>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-web</artifactId>
    </dependency>
    <dependency>
        <groupId>mysql</groupId>
        <artifactId>mysql-connector-java</artifactId>
    </dependency>
</dependencies>

场景启动器

在官方当中对spring-boot-starter-进行了解释,这是某一个开发场景的启动器。一个starter是一系列开发场景依赖的集合。所以只要引入一个starter就可以引入场景开发需要的大多数依赖【maven的特性:依赖传递原则】,官方场景启动器的命名方式是spring-boot-starter-*, *代表的是SpringBoot的一系列场景启动器。也可以自己设置场景启动器,但是命名方式不要和官方的一样 。开头不要是spring-boot。SoringBoot推荐使用xxxx-spring-boot-xxx.这种命名方式

自动配置

查看组件

在SpringBoot的主程序中SpringApplication.run方法返回值是IOC容器,调用返回对象的方法可以查看容器里面的组件。在里面能看见Mvc开发需要的全套配置和常用组件。

    public static void main(String[] args) {
//        返回对象是IOC容器
        ConfigurableApplicationContext run = SpringApplication.run(MyApplication.class, args);
//        调用getBeanDefinitionNames方法,查看IOC容器中的组件
        String[] names = run.getBeanDefinitionNames();
        for (String name : names) {
            System.out.println("name = " + name);
        }
    }

设置组件扫描

在SSM阶段需要设置组件扫描,但是在SpringBoot中,默认会扫描跟主程序MyApplication同一级以下的包。如果在主程序以上就需要设置。通过设置属性scanBasePackages值。或者通过@CompentScan注解。

@SpringBootApplication(scanBasePackages = {"包路径"})
​
一个上面的顶下面这三个
​
@SpringBootConfiguration
@EnableAutoConfiguration
@ComponentScan

修改配置

在SpringBoot中各种配置都有默认值。就比如说tomcat端口号是8080.

需要对配置进行修改,就在application.properties文件中进行修改。想要进行修改的配置对应的key在官方文档的Application Properties下面。

server.port=8888

按需配置

在SpringBoot里面配置了很多开发场景也有很多场景依赖代码。这些场景依赖不会一次性引入,都是按需引入。如果不引入开发场景,自动配置代码不能生效【就是去源码里面看冒红,毕竟也不用】。如果需要针对场景开发,只要引入自己需要的开发场景spring-boot-starter-xxx【开发场景】,自动配置代码就能用了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值