springBoot配置数据库并且测试连接

目录

第一步配置数据库基本属性

第二步测试数据库连接

第三步执行测试方法testDataSource


一个项目除了搭建(maven导入依赖坐标),第一步就是配置数据库并且测试连接。

前提条件:你已经会创建springBoot项目

核心内容:在资源文件application.properties,配置数据库基本属性;测试数据库连接

你可以使用我提供的数据库,下面是sql语句

/*
 Navicat Premium Data Transfer

 Source Server         : javaEE
 Source Server Type    : MySQL
 Source Server Version : 80032 (8.0.32)
 Source Host           : localhost:3306
 Source Schema         : demo

 Target Server Type    : MySQL
 Target Server Version : 80032 (8.0.32)
 File Encoding         : 65001

 Date: 27/03/2025 11:32:26
*/
DROP database if EXISTS `demo`;

create DATABASE `demo` ;
use `demo`;
SET NAMES utf8mb4;
SET FOREIGN_KEY_CHECKS = 0;

-- ----------------------------
-- Table structure for admin
-- ----------------------------
DROP TABLE IF EXISTS `admin`;
CREATE TABLE `admin`  (
  `id` int NOT NULL,
  `name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_as_ci NOT NULL,
  `password` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_as_ci NOT NULL,
  PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_as_ci ROW_FORMAT = DYNAMIC;

-- ----------------------------
-- Records of admin
-- ----------------------------
INSERT INTO `admin` VALUES (1, 'zwy', 'zwy123');
INSERT INTO `admin` VALUES (2, 'zwy', 'zwy123');
INSERT INTO `admin` VALUES (3, 'zwy', 'zwy123');
INSERT INTO `admin` VALUES (4, 'zwy4', 'zwy123');
INSERT INTO `admin` VALUES (10, 'string', 'string');
INSERT INTO `admin` VALUES (111, 'string', 'string');
INSERT INTO `admin` VALUES (9527, 'zwy', '666666');
INSERT INTO `admin` VALUES (123424, '124124', '1241241');

SET FOREIGN_KEY_CHECKS = 1;

第一步配置数据库基本属性

spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.datasource.url=jdbc:mysql://localhost:3306/数据库名称?useSSL=false&serverTimezone=UTC&allowPublicKeyRetrieval=true
spring.datasource.username=你数据库的账号
spring.datasource.password=你数据库的密码

第二步测试数据库连接

   @Autowired
    private DataSource dataSource;
    @Test
    void testDataSource() throws Exception {
        if(dataSource.getConnection()!=null){
            System.out.println("数据源连接成功");
        }else {
            System.out.println("数据源连接失败");
        }

    }

    @Test
    void contextLoads() {
    }

第三步执行测试方法testDataSource

Spring Boot 提供了内置的测试支持,包括对数据库连接测试。在测试中,我们通常会使用`@SpringBootTest`注解来启动一个包含数据库配置的完整的Spring应用上下文。如果你想要测试数据库连接,可以按照以下步骤进行: 1. **创建测试类**:首先,你需要创建一个Spring MVC或Repository测试类,并添加`@SpringBootTest`注解,指定扫描包。 ```java import org.springframework.boot.test.context.SpringBootTest; @SpringBootTest(webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT) public class MyApplicationTests { //... } ``` 2. **配置数据源**:在测试类上或其相关的配置文件中(如application-test.properties),设置测试数据库的数据源。例如,可以使用H2内存数据库。 ```properties spring.datasource.url=jdbc:h2:mem:testdb;DB_CLOSE_DELAY=-1 spring.datasource.driverClassName=org.h2.Driver spring.datasource.username=sa spring.datasource.password= ``` 3. **编写测试方法**:然后你可以编写测试方法来测试数据访问层,如Repository或者Service。在方法里注入对应的数据源或者依赖并进行操作。 ```java @Autowired private MyRepository repository; @Test public void testDatabaseConnection() { Optional<MyEntity> entity = repository.findById(1); //验证连接是否可用和查询结果 assertNotNull(entity); } ``` 4. **断言和清理**:在测试完毕后,确认数据源关闭以避免影响后续测试。有些库提供自动清理机制,如`Testcontainers`。 记得每次运行测试时,都会创建一个新的数据库环境,这有助于保证测试的隔离性和独立性。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值