Spring Boot

1.什么是SpringBoot:

Spring Boot 是一个开源的 Java 应用框架,旨在简化新 Spring 应用的初始搭建以及开发过程。它使用“约定优于配置”的原则,减少了项目配置的复杂性。

Spring Boot 的一些主要特点包括:

  1. 自动配置:Spring Boot 可以自动配置 Spring 应用程序,省去了大量的 XML 配置。

  2. 起步依赖:通过起步依赖(Starter Dependencies),可以简化项目的依赖管理。

  3. 应用监控:提供对应用程序运行状态的监控,包括健康检查、外部化配置等。

  4. 生产准备:Spring Boot 默认集成了许多适用于生产环境的特性,如安全性、数据访问、指标收集等。

  5. 非侵入式:Spring Boot 提供了许多非侵入式的功能,比如嵌入式服务器、日志框架等,你可以自由选择。

  6. 与 Spring 生态系统集成:Spring Boot 可以很好地与 Spring 生态系统中的其他框架和工具集成。

Spring Boot 的核心思想是让开发者能够以更少的代码和配置来创建 Spring 应用程序。它简化了项目的创建和打包过程,使得开发者可以更专注于业务逻辑的实现。

2.使用SpringBoot的好处:

使用 Spring Boot 相比于传统的 Spring 应用程序有几个明显的好处:

  1. 简化配置:Spring Boot 提供了一种简化的方式来配置 Spring 应用程序,通过使用 application.properties 或 application.yml 文件,而不是传统的 XML 配置文件。这大大减少了配置的复杂性。

  2. 自动配置:Spring Boot 能够自动配置 Spring 应用程序,这意味着你可以省去很多样板代码和 XML 配置。它能够根据添加的依赖自动配置 Bean。

  3. 起步依赖(Starters):Spring Boot 提供了一种叫做“起步依赖”的机制,允许你通过添加一个起步依赖来引入所需的功能,比如数据库访问、Web 开发等。这简化了依赖管理和项目构建。

  4. 生产准备特性:Spring Boot 提供了很多开箱即用的特性,如嵌入式服务器、安全性、数据访问、指标收集等,这些特性都是为了生产环境而设计的。

  5. 总的来说,Spring Boot 简化了 Spring 应用程序的开发和部署过程,使得开发者可以更专注于业务逻辑的实现,而不是底层配置和集成细节。

总的来说,Spring Boot 简化了 Spring 应用程序的开发和部署过程,使得开发者可以更专注于业务逻辑的实现,而不是底层配置和集成细节。

3.怎么使用SpringBoot:

3.1 新建项目:

3.2 选择起步依赖:

3.3 在pom文件配置mybatis起步依赖和数据库驱动:
<!--mybatis起步依赖-->
<dependency>
    <groupId>org.mybatis.spring.boot</groupId>
    <artifactId>mybatis-spring-boot-starter</artifactId>
    <version>2.1.3</version>
</dependency>
<!-- MySQL连接驱动 -->
<dependency>
    <groupId>mysql</groupId>
    <artifactId>mysql-connector-java</artifactId>
    <version>5.1.6</version>
</dependency>

<dependency>
    <groupId>com.alibaba</groupId>
    <artifactId>druid-spring-boot-starter</artifactId>
    <version>1.1.10</version>
</dependency>
3.4 application.properties 或 application.yml 文件配置数据库信息
server:
  port: 8080




#DB Configuration:
spring:
  #连接池配置
  datasource:
    type: com.alibaba.druid.pool.DruidDataSource
    druid:
      driver-class-name: com.mysql.cj.jdbc.Driver
      url: jdbc:mysql://localhost:3306/advdb?useUnicode=true&serverTimezone=GMT&characterEncoding=UTF-8&useSSL=false
      username: root
      password: 123456
      initial-size: 1                     #连接池初始大小
      max-active: 20                      #连接池中最大的活跃连接数
      min-idle: 1                         #连接池中最小的活跃连接数
      max-wait: 60000                     #配置获取连接等待超时的时间
      pool-prepared-statements: true    #打开PSCache,并且指定每个连接上PSCache的大小
      max-pool-prepared-statement-per-connection-size: 20
      validation-query: SELECT 1 FROM DUAL
      validation-query-timeout: 30000
      test-on-borrow: false             #是否在获得连接后检测其可用性
      test-on-return: false             #是否在连接放回连接池后检测其可用性
      test-while-idle: true             #是否在连接空闲一段时间后检测其可用性

mybatis:
  mapper-locations: classpath:mapper/*Mapper.xml
  type-aliases-package: com.fs.pojo
  configuration:
    log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
# mybatis 配置

4. 通过测试实验是否连接数据库:

4.1 任写一个dao层,实现一个方法,并且添加mapper映射方法,最后在SpringBoot自带的测试环境进行测试,方法执行就是连接成功.

package com.fs;

import com.fs.mapper.AdvDao;
import com.fs.pojo.Adv;
import org.junit.jupiter.api.Test;
import org.mybatis.spring.annotation.MapperScan;
import org.springframework.boot.test.context.SpringBootTest;

import javax.annotation.Resource;
import java.util.List;

@SpringBootTest
@MapperScan("com.fs.mapper")
class SpringBootDemosApplicationTests {

    @Resource
    private AdvDao advDao;

    @Test
    void contextLoads() {
    }

    @Test
    void Test() {
        System.out.println(advDao);

//        advDao.queryById(1);
        List<Adv> advs = advDao.queryAll();
        for (Adv adv : advs) {
            System.out.println(adv);
        }
    }
}
4.2 常见错误及解决方案:

错误指出我们AdvDao找不到

解决方案1:dao层类上加一个@Mapper注解进行映射

解决方案2:在SpringBoot主启动类上加@MapperScan注解,并指定需要扫描的包

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值